summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--classes/article.php6
-rw-r--r--classes/handler/public.php2
-rw-r--r--classes/rssutils.php28
-rw-r--r--css/Makefile4
-rw-r--r--css/cdm.css413
-rw-r--r--css/cdm.less416
-rw-r--r--css/default.css1
-rw-r--r--css/default.less11
-rw-r--r--css/dijit.css666
-rw-r--r--css/dijit.less664
-rw-r--r--css/layout.css2
-rw-r--r--css/prefs.css129
-rw-r--r--css/prefs.less130
-rw-r--r--css/tt-rss.less (renamed from css/tt-rss.css)975
-rw-r--r--css/utility.css14
-rw-r--r--include/functions.php20
-rw-r--r--include/login_form.php3
-rwxr-xr-xinclude/sanity_check.php25
-rwxr-xr-xinstall/index.php2
-rw-r--r--locale/ru_RU/LC_MESSAGES/messages.mobin73963 -> 73982 bytes
-rw-r--r--locale/ru_RU/LC_MESSAGES/messages.po2
-rw-r--r--register.php2
-rw-r--r--schema/ttrss_schema_mysql.sql3
-rw-r--r--schema/ttrss_schema_pgsql.sql3
-rw-r--r--schema/versions/mysql/133.sql7
-rw-r--r--schema/versions/pgsql/133.sql7
-rw-r--r--themes/default.php6
27 files changed, 1823 insertions, 1718 deletions
diff --git a/classes/article.php b/classes/article.php
index 8c8e0bdda..1d5f06e70 100644
--- a/classes/article.php
+++ b/classes/article.php
@@ -43,7 +43,7 @@ class Article extends Handler_Protected {
} else if ($mode == "raw") {
if (isset($_REQUEST['html'])) {
header("Content-Type: text/html");
- print '<link rel="stylesheet" type="text/css" href="css/tt-rss.css"/>';
+ print '<link rel="stylesheet" type="text/css" href="css/default.css"/>';
}
$article = $this->format_article($id, false, isset($_REQUEST["zoom"]));
@@ -601,9 +601,7 @@ class Article extends Handler_Protected {
$rv['content'] .= "<html><head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/>
<title>".$line["title"]."</title>".
- stylesheet_tag("css/tt-rss.css").
- stylesheet_tag("css/zoom.css").
- stylesheet_tag("css/dijit.css")."
+ stylesheet_tag("css/default.css")."
<link rel=\"shortcut icon\" type=\"image/png\" href=\"images/favicon.png\">
<link rel=\"icon\" type=\"image/png\" sizes=\"72x72\" href=\"images/favicon-72px.png\">
diff --git a/classes/handler/public.php b/classes/handler/public.php
index ec41ddb87..a98ea0193 100644
--- a/classes/handler/public.php
+++ b/classes/handler/public.php
@@ -387,7 +387,7 @@ class Handler_Public extends Handler {
<link rel=\"icon\" type=\"image/png\" sizes=\"72x72\" href=\"images/favicon-72px.png\">";
echo stylesheet_tag("css/utility.css");
- echo stylesheet_tag("css/dijit.css");
+ echo stylesheet_tag("css/default.css");
echo javascript_tag("lib/prototype.js");
echo javascript_tag("lib/scriptaculous/scriptaculous.js?load=effects,controls");
print "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/>
diff --git a/classes/rssutils.php b/classes/rssutils.php
index d6fe048f9..f6326720d 100644
--- a/classes/rssutils.php
+++ b/classes/rssutils.php
@@ -312,7 +312,8 @@ class RSSUtils {
feed_url,auth_pass,cache_images,
mark_unread_on_update, owner_uid,
auth_pass_encrypted, feed_language,
- last_modified
+ last_modified,
+ ".SUBSTRING_FOR_DATE."(last_unconditional, 1, 19) AS last_unconditional
FROM ttrss_feeds WHERE id = '$feed'");
$owner_uid = db_fetch_result($result, 0, "owner_uid");
@@ -333,6 +334,7 @@ class RSSUtils {
}
$stored_last_modified = db_fetch_result($result, 0, "last_modified");
+ $last_unconditional = db_fetch_result($result, 0, "last_unconditional");
$cache_images = sql_bool_to_bool(db_fetch_result($result, 0, "cache_images"));
$fetch_url = db_fetch_result($result, 0, "feed_url");
$feed_language = db_escape_string(mb_strtolower(db_fetch_result($result, 0, "feed_language")));
@@ -384,21 +386,21 @@ class RSSUtils {
// fetch feed from source
if (!$feed_data) {
- _debug("stored last modified: $stored_last_modified", $debug_enabled);
- _debug("fetching [$fetch_url]...", $debug_enabled);
+ _debug("last unconditional update request: $last_unconditional");
if (ini_get("open_basedir") && function_exists("curl_init")) {
_debug("not using CURL due to open_basedir restrictions");
}
- /*$feed_data = fetch_file_contents($fetch_url, false,
- $auth_login, $auth_pass, false,
- $no_cache ? FEED_FETCH_NO_CACHE_TIMEOUT : FEED_FETCH_TIMEOUT,
- 0);*/
+ if (time() - strtotime($last_unconditional) > MAX_CONDITIONAL_INTERVAL) {
+ _debug("maximum allowed interval for conditional requests exceeded, forcing refetch");
+
+ $force_refetch = true;
+ } else {
+ _debug("stored last modified for conditional request: $stored_last_modified", $debug_enabled);
+ }
- // TODO: last_modified should be limited, if the feed has not been updated for a while
- // we probably should force one update without the header
- // unfortunately last_updated gets bumped on http 304 so that daemon would work properly
+ _debug("fetching [$fetch_url] (force_refetch: $force_refetch)...", $debug_enabled);
$feed_data = fetch_file_contents([
"url" => $fetch_url,
@@ -553,7 +555,7 @@ class RSSUtils {
_debug("no articles found.", $debug_enabled);
db_query("UPDATE ttrss_feeds
- SET last_updated = NOW(), last_error = '' WHERE id = '$feed'");
+ SET last_updated = NOW(), last_unconditional = NOW(), last_error = '' WHERE id = '$feed'");
return; // no articles
}
@@ -1140,7 +1142,7 @@ class RSSUtils {
purge_feed($feed, 0, $debug_enabled);
db_query("UPDATE ttrss_feeds
- SET last_updated = NOW(), last_error = '' WHERE id = '$feed'");
+ SET last_updated = NOW(), last_unconditional = NOW(), last_error = '' WHERE id = '$feed'");
// db_query("COMMIT");
@@ -1158,7 +1160,7 @@ class RSSUtils {
db_query(
"UPDATE ttrss_feeds SET last_error = '$error_msg',
- last_updated = NOW() WHERE id = '$feed'");
+ last_updated = NOW(), last_unconditional = NOW() WHERE id = '$feed'");
unset($rss);
return;
diff --git a/css/Makefile b/css/Makefile
new file mode 100644
index 000000000..cb929bb4c
--- /dev/null
+++ b/css/Makefile
@@ -0,0 +1,4 @@
+
+default.css: *.less
+ lessc -x default.less > $@
+
diff --git a/css/cdm.css b/css/cdm.css
deleted file mode 100644
index 5f4bf3004..000000000
--- a/css/cdm.css
+++ /dev/null
@@ -1,413 +0,0 @@
-div.cdmHeader img, div.cdmHeader input, div.cdmFooter img {
- vertical-align : middle;
-}
-
-div.cdmHeader, div.cdmFooter {
- display : table;
-}
-
-div.cdmHeader > * {
- display : table-cell;
- padding : 5px;
-}
-
-div.cdmFooter > * {
- display : table-cell;
- vertical-align : middle;
-}
-
-div.cdmHeader > div, div.cdmFooter > div {
- white-space : nowrap;
-}
-
-div.cdmHeader > span, div.cdmFooter > span.left {
- width : 100%;
-}
-
-div.cdmHeader span.updated {
- color : #555;
- font-weight : normal;
- font-size : 11px;
- white-space : nowrap;
- vertical-align : middle;
-}
-
-div.cdmHeader input {
- margin-right : 5px;
-}
-
-div.cdmHeader div.updPic {
- width : 25px;
- display : inline-block;
- text-align : center;
-}
-
-div.cdmHeader div.updPic img {
- vertical-align : middle;
-}
-
-div.cdmHeader img, div.cdmFooter img {
- margin : 0px 4px;
-}
-
-div.cdmHeader input {
- margin-left : 4px;
- margin-right : 4px;
-}
-
-div.cdmIntermediate {
- margin : 10px;
-}
-
-div.cdmContentInner {
- margin : 10px;
- line-height : 1.5;
- font-size : 16px;
-}
-
-div.cdmIntermediate img,
-div.cdmIntermediate video,
-div.cdmContentInner img,
-div.cdmContentInner video {
- border-width : 0px;
- max-width : 98%;
- height : auto;
-}
-
-div.cdmContentInner h1 {
- font-size : 16px;
-}
-
-div.cdmContentInner h2,
-div.cdmContentInner h3,
-div.cdmContentInner h4 {
- font-size : 15px;
-}
-
-div.cdmFooter {
- height : 30px;
- padding-left : 5px;
- font-weight : normal;
- color : #555;
- clear : both;
-}
-
-div.cdm {
- margin-right : 4px;
-}
-
-div.cdm.expanded {
- margin-top : 4px;
- margin-bottom : 4px;
-}
-
-div.cdm.expanded div.cdmFooter {
- border-style : solid;
- border-width : 0px 0px 1px 0px;
- border-color : #ddd;
-}
-
-div.cdm.expandable {
- background-color : #f0f0f0;
- border-width : 0px 0px 1px 0px;
- border-color : #ddd;
- border-style : solid;
-}
-
-div.cdm.expandable > hr {
- display : none;
-}
-
-div.cdm.expanded > hr {
- margin-top : 0px;
- margin-bottom : 0px;
-}
-
-div.cdm.expandable.Unread {
- background : white;
-}
-
-div.cdm.expandable.Selected {
- background : #f9fbff;
-}
-
-div.cdm.expandable.active {
- background : white ! important;
-}
-
-div.cdm.expandable div.cdmHeader span.titleWrap {
- white-space : nowrap;
- text-overflow : ellipsis;
- overflow : hidden;
- max-width : 500px;
-}
-
-div.cdm.expandable.active div.cdmHeader span.titleWrap {
- white-space : normal;
-}
-
-div.cdm.expandable div.cdmHeader a.title {
- font-weight : 600;
- color : #555;
- font-size : 14px;
- -webkit-transition : color 0.2s;
- transition : color 0.2s;
- text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
-}
-
-div.cdm.expandable.Unread div.cdmHeader a.title {
- color : black;
-}
-
-div.cdm.expandable.active div.cdmHeader a.title {
- color : #0088cc;
- font-size : 16px;
- font-weight : 600;
- text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
-}
-
-div.cdm.expanded div.cdmHeader {
- background : transparent ! important;
-}
-
-div.cdm.expanded div.cdmHeader a.title {
- font-size : 16px;
- color : #999;
- font-weight : 600;
- -webkit-transition : color 0.2s;
- transition : color 0.2s;
- text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
-}
-
-div.cdm.expanded.active {
- background : white;
-}
-
-div.cdm.expanded.active div.cdmHeader a.title {
- color : #0088cc;
-}
-
-div.cdm.expanded.Unread div.cdmHeader a.title {
- color : black;
-}
-
-div.cdm.expanded div.cdmContent {
- color : #555;
-}
-
-div.cdm.expanded.Unread div.cdmContent {
- color : black;
-}
-
-div.cdm.active div.cdmContent {
- color : black;
-}
-
-span.cdmExcerpt {
- white-space : nowrap;
- font-size : 11px;
- color : #999;
- font-weight : normal;
- cursor : pointer;
-}
-
-div.cdmContent div.postEnclosures {
- margin-top : 1em;
- color : #555;
-}
-
-div.cdmFeedTitle {
- border-color : #0088cc;
- border-width : 0px 0px 1px 0px;
- border-style : solid;
- padding : 5px 3px 5px 5px;
-}
-
-div.cdmFeedTitle a.title {
- color : #555;
- font-weight : bold;
-}
-
-div.cdmFeedTitle a {
- color : #555;
-}
-
-div.cdmFeedTitle a:hover {
- color : #0088cc;
-}
-
-div.cdmHeader span.hlFeed {
- float : right;
- font-weight : normal;
- font-style : italic;
-}
-
-div.cdmHeader div.hlFeed, div.cdmHeader div.hlFeed a {
- vertical-align : middle;
- color : #555;
- font-weight : normal;
- font-style : italic;
- font-size : 11px;
-}
-
-div.cdm .hlFeed a {
- border-radius : 4px;
- display : inline-block;
- padding : 1px 4px 1px 4px;
-}
-
-div.cdmContentInner p {
- /*max-width : 650px;*/
- -webkit-hyphens: auto;
- -moz-hyphens: auto;
- hyphens: auto;
-}
-
-div.cdmContentInner iframe {
- min-width : 50%;
- max-width : 98%;
-}
-
-div.cdmHeader span.author {
- white-space : nowrap;
- color : #555;
- font-size : 11px;
- font-weight : normal;
-}
-
-
-div#floatingTitle {
- position : absolute;
- z-index : 5;
- top : 0px;
- right : 0px;
- left : 0px;
- border-color : #ddd;
- border-width : 0px 0px 1px 0px;
- border-style : solid;
- background : white;
- color : #555;
- box-shadow : 0px 1px 1px -1px rgba(0,0,0,0.1);
-}
-
-div#floatingTitle > * {
- display : table-cell;
- white-space : nowrap;
- vertical-align : middle;
- padding : 9px 5px;
-}
-
-div#floatingTitle img {
- margin-right : 4px;
- margin-left : 4px;
-}
-
-div#floatingTitle span.author {
- color : #555;
- font-size : 11px;
- font-weight : normal;
-}
-
-div#floatingTitle a.title {
- font-size : 16px;
- color : #999;
- -webkit-transition : color 0.2s;
- transition : color 0.2s;
- font-weight : 600;
- text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
-}
-
-div#floatingTitle.Unread a.title {
- color : black;
-}
-
-div#floatingTitle img.anchor {
- margin-left : 0px;
-}
-
-div#floatingTitle div.hlFeed {
- padding-right : 10px;
- color : #555;
- font-weight : normal;
- font-style : italic;
- font-size : 11px;
- white-space : nowrap;
-}
-
-div#floatingTitle div.hlFeed a {
- border-radius : 4px;
- display : inline-block;
- padding : 1px 4px 1px 4px;
-}
-
-div#floatingTitle span.updated {
- padding-right : 10px;
- white-space : nowrap;
- color : #555;
- font-size : 11px;
-}
-
-div#floatingTitle div.hlFeed a {
- color : #555;
-}
-
-div#floatingTitle span.titleWrap {
- width : 100%;
- white-space : normal;
-}
-
-div#floatingTitle .dijit,
-div#floatingTitle img.hlScorePic {
- display : none;
-}
-
-.cdm.high .cdmHeader a.title.high, .cdm.high .cdmHeader .cdmExcerpt,
-.cdm.high .cdmHeader span.author {
- color : #00aa00;
-}
-
-.cdm.Unread.high .cdmHeader a.title.high, .cdm.Unread.high .cdmHeader .cdmExcerpt,
-.cdm.Unread.high .cdmHeader span.author {
- color : #00dd00;
-}
-
-.cdm .cdmHeader a.title.low, .cdm.low .cdmHeader .cdmExcerpt,
-.cdm.Unread .cdmHeader a.title.low, .cdm.Unread.low .cdmHeader .cdmExcerpt,
-.cdm.low .cdmHeader span.author {
- color : #909090;
- text-decoration : line-through;
-}
-
-div.cdmFeedTitle > * {
- display : table-cell;
- vertical-align : middle;
-}
-
-div.cdmFeedTitle a.title {
- width : 100%;
-}
-
-div.cdmFeedTitle a.catchup {
- text-align : right;
- color : #555;
- padding-right : 10px;
- font-size : 11px;
- white-space : nowrap;
-}
-
-div.cdmFeedTitle a.catchup:hover {
- color : #0088cc;
-}
-
diff --git a/css/cdm.less b/css/cdm.less
new file mode 100644
index 000000000..5a79addbd
--- /dev/null
+++ b/css/cdm.less
@@ -0,0 +1,416 @@
+.cdm {
+ margin-right : 4px;
+
+ .cdmHeader, .cdmFooter {
+ display : table;
+ }
+
+ .cdmHeader img, .cdmHeader input, .cdmFooter img {
+ vertical-align : middle;
+ }
+
+ .cdmHeader > div, .cdmFooter > div {
+ white-space : nowrap;
+ }
+
+ .cdmHeader > span, .cdmFooter > span.left {
+ width : 100%;
+ }
+
+ .cdmHeader img, .cdmFooter img {
+ margin : 0px 4px;
+ }
+
+ .cdmHeader {
+ > * {
+ display : table-cell;
+ padding : 5px;
+ }
+
+ span.updated {
+ color : #555;
+ font-weight : normal;
+ font-size : 11px;
+ white-space : nowrap;
+ vertical-align : middle;
+ }
+
+ input {
+ margin-right : 5px;
+ }
+
+ div.updPic {
+ width : 25px;
+ display : inline-block;
+ text-align : center;
+ }
+
+ div.updPic img {
+ vertical-align : middle;
+ }
+
+ input {
+ margin-left : 4px;
+ margin-right : 4px;
+ }
+ }
+
+ .cdmFooter {
+ height : 30px;
+ padding-left : 5px;
+ font-weight : normal;
+ color : #555;
+ clear : both;
+
+ > * {
+ display : table-cell;
+ vertical-align : middle;
+ }
+ }
+
+ .cdmIntermediate {
+ margin : 10px;
+ }
+
+ .cdmContentInner {
+ margin : 10px;
+ line-height : 1.5;
+ font-size : 16px;
+
+ h1 {
+ font-size : 16px;
+ }
+
+ h2,
+ h3,
+ h4 {
+ font-size : 15px;
+ }
+
+ }
+
+ .cdmIntermediate img,
+ .cdmIntermediate video,
+ .cdmContentInner img,
+ .cdmContentInner video {
+ border-width : 0px;
+ max-width : 98%;
+ height : auto;
+ }
+}
+
+.cdm.expanded {
+ margin-top : 4px;
+ margin-bottom : 4px;
+
+ .cdmFooter {
+ border: 0px solid #ddd;
+ border-bottom-width: 1px;
+ }
+
+ > hr {
+ margin-top : 0px;
+ margin-bottom : 0px;
+ }
+
+}
+
+.cdm.expandable {
+ background-color : #f0f0f0;
+ border: 0px solid #ddd;
+ border-bottom-width: 1px;
+
+ > hr {
+ display : none;
+ }
+
+ div.cdmHeader span.titleWrap {
+ white-space : nowrap;
+ text-overflow : ellipsis;
+ overflow : hidden;
+ max-width : 500px;
+ }
+}
+
+.cdm.expandable.Unread {
+ background : white;
+}
+
+.cdm.expandable.Selected {
+ background : #f9fbff;
+}
+
+.cdm.expandable.active {
+ background : white ! important;
+}
+
+div.cdm.expandable.active div.cdmHeader span.titleWrap {
+ white-space : normal;
+}
+
+div.cdm.expandable div.cdmHeader a.title {
+ font-weight : 600;
+ color : #555;
+ font-size : 14px;
+ -webkit-transition : color 0.2s;
+ transition : color 0.2s;
+ text-rendering: optimizelegibility;
+ font-family : @fonts-ui-bold;
+}
+
+div.cdm.expandable.Unread div.cdmHeader a.title {
+ color : black;
+}
+
+div.cdm.expandable.active div.cdmHeader a.title {
+ color: @color-link;
+ font-size: 16px;
+ font-weight: 600;
+ text-rendering: optimizelegibility;
+ font-family: @fonts-ui-bold;
+}
+
+div.cdm.expanded div.cdmHeader {
+ background : transparent ! important;
+}
+
+div.cdm.expanded div.cdmHeader a.title {
+ font-size : 16px;
+ color : #999;
+ font-weight : 600;
+ -webkit-transition : color 0.2s;
+ transition : color 0.2s;
+ text-rendering: optimizelegibility;
+ font-family : @fonts-ui-bold;
+}
+
+div.cdm.expanded.active {
+ background : white;
+}
+
+div.cdm.expanded.active div.cdmHeader a.title {
+ color : @color-link;
+}
+
+div.cdm.expanded.Unread div.cdmHeader a.title {
+ color : black;
+}
+
+div.cdm.expanded div.cdmContent {
+ color : #555;
+}
+
+div.cdm.expanded.Unread div.cdmContent {
+ color : black;
+}
+
+div.cdm.active div.cdmContent {
+ color : black;
+}
+
+span.cdmExcerpt {
+ white-space : nowrap;
+ font-size : 11px;
+ color : #999;
+ font-weight : normal;
+ cursor : pointer;
+}
+
+div.cdmContent div.postEnclosures {
+ margin-top : 1em;
+ color : #555;
+}
+
+div.cdmFeedTitle {
+ border: 0px solid @color-link;
+ border-bottom-width: 1px;
+ padding : 5px 3px 5px 5px;
+}
+
+div.cdmFeedTitle a.title {
+ color : #555;
+ font-weight : bold;
+}
+
+div.cdmFeedTitle a {
+ color : #555;
+}
+
+div.cdmFeedTitle a:hover {
+ color : @color-link;
+}
+
+div.cdmHeader span.hlFeed {
+ float : right;
+ font-weight : normal;
+ font-style : italic;
+}
+
+div.cdmHeader div.hlFeed, div.cdmHeader div.hlFeed a {
+ vertical-align : middle;
+ color : #555;
+ font-weight : normal;
+ font-style : italic;
+ font-size : 11px;
+}
+
+div.cdm .hlFeed a {
+ border-radius : 4px;
+ display : inline-block;
+ padding : 1px 4px 1px 4px;
+}
+
+div.cdmContentInner p {
+ /*max-width : 650px;*/
+ -webkit-hyphens: auto;
+ -moz-hyphens: auto;
+ hyphens: auto;
+}
+
+div.cdmContentInner iframe {
+ min-width : 50%;
+ max-width : 98%;
+}
+
+div.cdmHeader span.author {
+ white-space : nowrap;
+ color : #555;
+ font-size : 11px;
+ font-weight : normal;
+}
+
+div#floatingTitle {
+ position : absolute;
+ z-index : 5;
+ top : 0px;
+ right : 0px;
+ left : 0px;
+ border: 0px solid #ddd;
+ border-bottom-width: 1px;
+ background : white;
+ color : #555;
+ box-shadow : 0px 1px 1px -1px rgba(0,0,0,0.1);
+
+ > * {
+ display : table-cell;
+ white-space : nowrap;
+ vertical-align : middle;
+ padding : 9px 5px;
+ }
+
+ img {
+ margin-right : 4px;
+ margin-left : 4px;
+ }
+
+ span.author {
+ color : #555;
+ font-size : 11px;
+ font-weight : normal;
+ }
+
+ a.title {
+ font-size : 16px;
+ color : #999;
+ -webkit-transition : color 0.2s;
+ transition : color 0.2s;
+ font-weight : 600;
+ text-rendering: optimizelegibility;
+ font-family : @fonts-ui-bold;
+ }
+
+ img.anchor {
+ margin-left : 0px;
+ }
+
+ div.hlFeed {
+ padding-right : 10px;
+ color : #555;
+ font-weight : normal;
+ font-style : italic;
+ font-size : 11px;
+ white-space : nowrap;
+ }
+
+ div.hlFeed a {
+ border-radius : 4px;
+ display : inline-block;
+ padding : 1px 4px 1px 4px;
+ }
+
+ span.updated {
+ padding-right : 10px;
+ white-space : nowrap;
+ color : #555;
+ font-size : 11px;
+ }
+
+ div.hlFeed a {
+ color : #555;
+ }
+
+ span.titleWrap {
+ width : 100%;
+ white-space : normal;
+ }
+
+ .dijit,
+ img.hlScorePic {
+ display : none;
+ }
+
+}
+
+div#floatingTitle.Unread a.title {
+ color : black;
+}
+
+.cdm.high .cdmHeader {
+ a.title.high,
+ .cdmExcerpt,
+ span.author {
+ color : #00aa00;
+ }
+}
+
+.cdm.Unread.high .cdmHeader {
+ a.title.high,
+ .cdmExcerpt,
+ span.author {
+ color : #00dd00;
+ }
+}
+
+.cdm .cdmHeader a.title.low,
+.cdm.low .cdmHeader .cdmExcerpt,
+.cdm.Unread .cdmHeader a.title.low,
+.cdm.Unread.low .cdmHeader .cdmExcerpt,
+.cdm.low .cdmHeader span.author {
+ color : #909090;
+ text-decoration : line-through;
+}
+
+.cdmFeedTitle {
+
+ > * {
+ display : table-cell;
+ vertical-align : middle;
+ }
+
+ a.title {
+ width : 100%;
+ }
+
+ a.catchup {
+ text-align : right;
+ color : #555;
+ padding-right : 10px;
+ font-size : 11px;
+ white-space : nowrap;
+ }
+
+ a.catchup:hover {
+ color : @color-link;
+ }
+
+}
diff --git a/css/default.css b/css/default.css
new file mode 100644
index 000000000..0abe17236
--- /dev/null
+++ b/css/default.css
@@ -0,0 +1 @@
+body{background:#fff;color:#000;margin:0;padding:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px}body#ttrssMain{overflow:hidden;max-height:100%}:focus{outline:none}div.postReply{padding:0}div.postReply div.postHeader{padding:5px;margin-right:4px;color:#909090;border:0 solid #ddd;border-bottom-width:1px}div.postReply div.postHeader div.postDate{text-align:right;color:#909090;float:right}div.postReply div.postHeader div{padding-bottom:3px}div.postReply div.postHeader span.author{color:#555;font-size:11px;font-weight:normal}div.postReply div.postTitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;text-rendering:optimizelegibility;font-family:"Segoe WP Semibold","Segoe UI Semibold","Segoe UI Web Semibold","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif}div.postReply div.postDate{padding-left:10px}div.postReply div.postContent{padding:10px;font-size:16px}div.postReply div.postContent img,div.postReply div.postContent video{border-width:0;max-width:98%;height:auto}div.postReply div.postContent h1{font-size:16px}div.postReply div.postContent h2,div.postReply div.postContent h3,div.postReply div.postContent h4{font-size:15px}div.postReply div.postContent p{hyphens:auto}div.postReply div.postContent iframe{min-width:50%;max-width:98%}div.postReply div.postEnclosures{color:#555}div.postReply img.tagsPic{width:16px;height:16px;margin-left:4px;vertical-align:middle}div.postReply span.author{font-size:12px}div.articleNote{background-color:#fff7d5;padding:5px;margin:5px;border:1px solid #e7d796;color:#9a8c59}div.articleNote div.noteEdit{float:right;cursor:pointer}h1{font-size:18px;font-weight:600;text-rendering:optimizelegibility;font-family:"Segoe UI Web","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif}h2{font-size:16px;font-weight:600;border:0 solid #ecf4ff;border-bottom-width:1px;text-rendering:optimizelegibility;font-family:"Segoe UI Web","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif}h3{font-size:13px;border:0 solid #ecf4ff;border-bottom-width:1px;font-weight:600;text-rendering:optimizelegibility;font-family:"Segoe UI Web","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif}h4{font-size:14px;font-weight:600;text-rendering:optimizelegibility;font-family:"Segoe UI Web","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif}hr{border:0 solid #ccc;border-bottom-width:1px}a{color:#08c;text-decoration:none}a:hover{color:#046;text-decoration:underline}#notify.visible{transform:translate(0, -35px)}#notify{bottom:-35px;right:0;height:20px;left:0;border-width:1px 0 0 0;border-style:solid;position:fixed;font-size:12px;z-index:99;padding:5px;box-shadow:0 -2px 2px rgba(0,0,0,0.1);transition:all .5s ease-in-out}#notify img{vertical-align:middle;max-height:14px}#notify span.msg{width:100%}#notify img.close{cursor:pointer}#notify span{display:table-cell;vertical-align:middle;padding:2px}.notify{border-color:#d7c47a;background-color:#fff7d5}.notify.notify_progress{border-color:#d7c47a;background-color:#fff7d5}.notify.notify_info{border-color:#52a8ec;background-color:#ecf4ff}.notify.notify_error{background-color:#fcc;border-color:#f00}.hl{border:0 solid #ddd;border-bottom-width:1px;padding:1px}.hl div.hlTitle{display:table-cell;cursor:pointer;width:100%;vertical-align:middle;overflow:hidden;white-space:nowrap;max-width:500px;text-overflow:ellipsis;padding:4px 6px}.hl div.hlLeft{display:table-cell;vertical-align:middle;white-space:nowrap}.hl div.hlRight{display:table-cell;white-space:nowrap;text-align:right;vertical-align:middle}.hl div.hlRight img{max-width:16px;max-height:16px}.hl span.hlFeed{display:table-cell;vertical-align:middle;text-align:right}.hl span.hlFeed a{border-radius:4px;display:inline-block;padding:1px 4px 1px 4px;font-size:11px;font-style:italic;font-weight:normal;color:#555;white-space:nowrap}.hl span.hlFeed a:hover{color:#52a8ec}.hl span.hlUpdated{color:#555;display:table-cell;vertical-align:middle;text-align:right;font-size:11px;white-space:nowrap;padding-left:10px}.hl span.hlUpdated div{display:inline-block}.hl div.hlLeft{padding-left:8px}.hl div.hlLeft input{margin-left:4px;margin-right:4px}.hl div.hlLeft img,.hl div.hlRight img{margin:0 4px}.hl div.hlLeft img{width:16px;height:16px}.hl div.hlTitle a{font-weight:600;text-rendering:optimizelegibility;font-family:"Segoe UI Web","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif;color:#777}.hl a.title.high,.hl span.hlContent.high .contentPreview{color:#0a0}.hl.Unread a.title.high,.hl.Unread span.hlContent.high .contentPreview{color:#0d0}.hl a.title.low,span.hlContent.low .contentPreview,.hl.Unread a.title.low,.hl.Unread span.hlContent.low .contentPreview{color:#909090;text-decoration:line-through}.hl.Unread div.hlTitle a{color:#000}.hl.active{background:#ecf4ff ! important}.hl.active div.hlTitle a{color:#52a8ec}.hl.Selected{background:#f9fbff}.hl.Grayed{color:#909090}div.filterTestHolder{height:300px;overflow:auto;border-color:#ddd;border-style:solid;margin:0 0 5px 0;border-width:1px}#content-insert blockquote,#headlines-frame blockquote,.dijitContentPane blockquote{margin:5px 0 5px 0;color:#555;padding-left:10px;border:0 solid #ccc;border-left-width:4px}#content-insert code,#headlines-frame code,.dijitContentPane code{color:#090;font-family:monospace;font-size:12px}#content-insert pre,#headlines-frame pre,.dijitContentPane pre{margin:5px 0 5px 0;padding:10px;color:#555;font-family:monospace;font-size:12px;border:0 solid #ccc;background:#f5f5f5;display:block;max-width:98%;overflow:auto}.alert{padding:8px 35px 8px 14px;margin-bottom:10px;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;border-radius:4px}.alert,.alert h4{color:#c09853}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px;cursor:pointer}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success h4{color:#468847}.alert-danger,.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-danger h4,.alert-error h4{color:#b94a48}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info h4{color:#3a87ad}ul.nomarks{list-style-type:none;margin:0;padding:10px}div.prefHelp{color:#555;padding:5px}.insensitive{color:#555}.small{font-size:11px}#main-toolbar>*{white-space:nowrap;display:table-cell;color:#999;overflow:hidden}#main-toolbar>*,#main-toolbar table *,#main-toolbar .actionChooser *{text-rendering:optimizelegibility;font-family:"Segoe UI Web","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px}#main-toolbar #headlines-toolbar{padding-right:4px;width:100%}#main-toolbar #headlines-toolbar span.holder{display:table;width:100%}#main-toolbar #headlines-toolbar span.holder>*{display:table-cell}#main-toolbar #headlines-toolbar .main{text-align:right}#main-toolbar #headlines-toolbar .main,#main-toolbar #headlines-toolbar .r{line-height:24px}#main-toolbar #headlines-toolbar span.r img{margin-right:4px;position:relative;top:3px}#main-toolbar #headlines-toolbar span.r .error a{color:#f00}#main-toolbar #selected_prompt{font-style:italic;text-align:right;margin-right:4px}@media (max-width:992px){#main-toolbar #selected_prompt{display:none}}span.contentPreview{color:#999;font-weight:normal;font-size:12px;padding-left:4px}span.hlLabelRef{background-color:#fff7d5;font-size:8px;color:#063064;font-weight:normal;margin-left:2px;padding:1px 4px 1px 4px;display:inline-block;vertical-align:middle;white-space:nowrap;border-radius:4px}img.markedPic,img.pubPic{cursor:pointer;vertical-align:middle;opacity:.5;transition:opacity .25s}img.markedPic:hover,img.pubPic:hover{opacity:1}img[src*='pub_set.png'],img[src*='mark_set.png']{opacity:1}div.tagCloudContainer{border:1px solid #ddd;margin:5px 0 5px 0;padding:5px;text-align:center}div.errorExplained{border:1px solid #ddd;margin:5px 0 5px 0;padding:5px}ul.feedErrorsList{max-height:300px;overflow:auto;list-style-type:none;border:1px solid #ddd;margin:0 0 5px 0;padding:5px}ul.feedErrorsList em{color:#555}ul.browseFeedList{height:300px;overflow:auto;border-width:0 1px 1px 1px;border-color:#ddd;border-style:solid;margin:0 0 5px 0;background-color:#fff;list-style-type:none;padding:0}ul.browseFeedList li{margin:0;padding:2px 4px 2px 4px}.browseFeedList span.subscribers{color:#808080}ul.compact{list-style-type:none;margin:0;padding:0}ul.compact li{margin:0;padding:0}.noborder{border-width:0}#overlay{background:#fff;left:0;top:0;height:100%;width:100%;z-index:100;position:absolute}#overlay_inner{font-weight:bold;margin:1em}form{margin:0;padding:0}div.loadingPrompt{padding:1em;text-align:center;font-weight:bold}div.whiteBox{margin-left:1px;text-align:center;padding:1em 1em 0 1em;font-size:11px;border:0 solid #ddd;border-bottom-width:1px}div.autocomplete{position:absolute;width:250px;background-color:#fff;border:1px solid #789;margin:0;padding:0}div.autocomplete ul{list-style-type:none;margin:0;padding:0}div.autocomplete ul li.selected{background-color:#fff7d5}div.autocomplete ul li{list-style-type:none;display:block;margin:0;padding:2px;height:32px;cursor:pointer}div#headlines-frame.wide .hlTitle{max-width:none;overflow:visible;white-space:normal}div#headlines-frame.wide .hl .hlFeed{display:none}img.hlScorePic{vertical-align:middle;width:16px;height:16px}div.dlgSec{font-size:12px;color:#555;font-weight:bold;clear:both;height:20px}div.dlgSecCont{position:relative;left:150px;top:-20px;float:left;font-size:12px;font-weight:normal}div.dlgSecCont>*{position:relative;top:-2px}div.dlgSecCont hr,div.dlgSecSimple hr{height:0;line-height:0;border:0 solid transparent;margin:2px}div.dlgButtons{text-align:right;clear:both}span.labelColorIndicator{height:16px;width:16px;border-radius:4px;line-height:14px;vertical-align:middle;font-size:9px;display:inline-block;border:1px solid #ccc;background-color:#fff7d5;color:#063064;text-align:center}div#cmdline{position:absolute;left:5px;bottom:5px;font-size:11px;color:#555;font-weight:bold;background-color:#fff;border:1px solid #52a8ec;padding:3px 5px 3px 5px;z-index:5}#feed_browser_spinner{vertical-align:middle;height:18px;width:18px}div.fatalError{margin-bottom:10px}div.fatalError button{margin-top:5px}div.fatalError textarea{width:565px;height:200px}#ttrssMain #main{border-width:0;margin:0;padding:0}#header-wrap{border-width:0;margin:0;padding:0}#content-wrap{padding:0;border-width:0;margin:0}#feeds-holder{padding:0;border:0 solid #ddd;overflow:hidden;background:#f5f5f5;box-shadow:inset -1px 0 2px -1px rgba(0,0,0,0.1);-webkit-overflow-scrolling:touch}#headlines-wrap-inner{padding:0;margin:0;border-width:0}#headlines-frame{padding:0;border:0 #ddd;margin-top:0;-webkit-overflow-scrolling:touch;-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden}#headlines-toolbar_splitter,#toolbar_splitter{display:none}#toolbar{padding:0;margin:0;border-width:0;white-space:nowrap;font-size:12px}#main-toolbar{background:#fff;border:0 solid #ddd;border-bottom-width:1px;padding-left:4px;height:26px}#header{border-width:0;text-align:right;color:#555;padding:5px 5px 0 0;margin:0;position:absolute;right:0;top:0;z-index:5}#footer{text-align:center;color:#555;padding:4px 4px 8px 4px;border-width:0}#content-insert{padding:0;border-color:#ddd;border-width:0;line-height:1.5;font-size:15px;overflow:auto;-webkit-overflow-scrolling:touch}#feedTree .dijitTreeRow .dijitTreeLabel.Unread{font-weight:bold}#feedTree .dijitTreeRow.Error .dijitTreeLabel{color:#f00}img.feedIcon,img.tinyFeedIcon{width:16px;height:16px;line-height:16px;vertical-align:middle;display:inline-block}.player{display:inline-block;color:#555;font-size:11px;font-family:sans-serif;border:1px solid #555;padding:0 4px 0 4px;margin:0 2px 0 2px;width:50px;text-align:center;background:#fff}.player.playing{color:#00c000;border-color:#00c000}.player:hover{background:#f0f0f0;cursor:pointer}#headlines-spacer{height:100%;margin-left:1px;text-align:center;color:#555;font-size:11px;font-style:italic}#headlines-spacer a,#headlines-spacer span{color:#555;padding:10px;display:block}#headlines-spacer a:hover{color:#52a8ec}ul#filterDlg_Matches,ul#filterDlg_Actions{max-height:100px;overflow:auto;list-style-type:none;border-style:solid;border-color:#ddd;border-width:0 1px 1px 1px;background-color:#fff;margin:0 0 5px 0;padding:0}ul#filterDlg_Matches li,ul#filterDlg_Actions li{cursor:pointer;padding:0 0 0 5px}ul.helpKbList{max-height:300px;overflow:auto;list-style-type:none;border:1px solid #ddd;margin:0 0 5px 0;padding:5px}ul.helpKbList span.hksequence{width:6em;margin-left:20px;color:#52a8ec;font-weight:bold;display:inline-block}ul.helpKbList h2{margin-top:0}span.collapseBtn{cursor:pointer}span.collapseBtn img{vertical-align:middle}select.attachments{display:block;margin-top:10px;max-width:120px}#selected_prompt{margin-right:25px;vertical-align:middle}body#ttrssMain.claro #feedTree.dijitTree .dijitTreeNode .dijitTreeRowSelected{box-shadow:-1px 0 2px -1px rgba(0,0,0,0.1);border-right-color:#fff}body#ttrssMain #feedTree.dijitTree .dijitTreeContainer{max-width:100%}body#ttrssMain #feedTree.dijitTree .dijitTreeRow{overflow:hidden;text-overflow:ellipsis}body#ttrssMain #feedTree.dijitTree .dijitTreeNode .dijitTreeRow{padding:4px 0 4px;border-width:1px;color:#333}body#ttrssMain #feedTree.dijitTree img.tinyFeedIcon{position:relative;top:-2px}#filterDlg_feeds select{height:150px;width:410px}ul#filterDlg_Matches li div.dijitCheckBox,ul#filterDlg_Actions li div.dijitCheckBox{margin-right:5px}body#ttrssMain #feedTree{height:100%;overflow-x:hidden;text-rendering:optimizelegibility;font-family:"Segoe UI Web","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif}body#ttrssMain #feedTree .counterNode.aux{background:#f0f0f0;color:#999;border-color:#f0f0f0}body#ttrssMain #feedTree .counterNode{font-weight:bold;display:inline-block;font-size:9px;text-align:center;border:1px solid #52a8ec;color:#fff;background:#52a8ec;border-radius:4px;vertical-align:middle;float:right;position:relative;line-height:14px;margin-right:8px;margin-top:2px;min-width:23px;height:14px}body#ttrssMain #feedTree .dijitTreeNode .loadingExpando{left:-3px;height:22px;position:relative;top:-3px}span.highlight{background-color:#ff0;color:#cc90cc}body#ttrssMain #headlines-frame .dijitCheckBox{border-width:0;opacity:.5}body#ttrssMain #headlines-frame .dijitCheckBoxHover,body#ttrssMain #headlines-frame .dijitCheckBoxChecked{opacity:1}body#ttrssMain #feedTree .dijitTreeRow img.dijitTreeExpandoLeaf{width:16px;height:16px;vertical-align:middle;position:relative}.dijitDropDownButton.attachments .dijitButtonText{font-size:12px}.dijitDropDownButton.attachments{display:inline-block}#editTagsDlg{overflow:visible}body#ttrssZoom{margin-left:auto;margin-right:auto;padding:20px;max-width:770px;background:#f5f5f5}body#ttrssZoom div.postHeader div.postFeedTitle{float:left;text-align:right;padding-left:0;font-size:11px}body#ttrssZoom div.postHeader a.postComments{text-align:right;padding-left:0;font-size:11px}body#ttrssZoom div.postHeader div.postDate{float:none;text-align:right;padding-left:0;color:#777;font-size:11px}body#ttrssZoom div.postHeader div.postTags{color:#777;font-size:11px}body#ttrssZoom div.postHeader div.postTitle{white-space:normal;font-size:16px}body#ttrssZoom div.postContent{font-size:15px;line-height:1.5}body#ttrssZoom div.postContent p{-webkit-hyphens:auto;-moz-hyphens:auto;hyphens:auto}body#ttrssZoom div.postHeader{margin:10px;border-width:0 0 1px 0;border-style:solid;border-color:#eee;background:#fff}body#ttrssZoom div.postReply{border:1px solid #ddd;background:#fff;box-shadow:0 1px 1px -1px rgba(0,0,0,0.1);border-radius:6px}body#ttrssZoom div.footer{margin-top:1em;text-align:center}body#ttrssZoom div.postContent img{max-width:730px;height:auto}body#ttrssZoom div.postContent blockquote{margin:5px 0 5px 0;color:#555;padding-left:10px;border-width:0 0 0 4px;border-color:#ccc;border-style:solid}body#ttrssZoom div.postContent code{color:#090;font-family:monospace;font-size:12px}body#ttrssZoom div.postContent pre{margin:5px 0 5px 0;padding:10px;color:#555;font-family:monospace;font-size:12px;border-width:0;border-color:#ccc;border-style:solid;background:#f5f5f5;display:block;max-width:98%;overflow:auto}.cdm{margin-right:4px}.cdm .cdmHeader,.cdm .cdmFooter{display:table}.cdm .cdmHeader img,.cdm .cdmHeader input,.cdm .cdmFooter img{vertical-align:middle}.cdm .cdmHeader>div,.cdm .cdmFooter>div{white-space:nowrap}.cdm .cdmHeader>span,.cdm .cdmFooter>span.left{width:100%}.cdm .cdmHeader img,.cdm .cdmFooter img{margin:0 4px}.cdm .cdmHeader>*{display:table-cell;padding:5px}.cdm .cdmHeader span.updated{color:#555;font-weight:normal;font-size:11px;white-space:nowrap;vertical-align:middle}.cdm .cdmHeader input{margin-right:5px}.cdm .cdmHeader div.updPic{width:25px;display:inline-block;text-align:center}.cdm .cdmHeader div.updPic img{vertical-align:middle}.cdm .cdmHeader input{margin-left:4px;margin-right:4px}.cdm .cdmFooter{height:30px;padding-left:5px;font-weight:normal;color:#555;clear:both}.cdm .cdmFooter>*{display:table-cell;vertical-align:middle}.cdm .cdmIntermediate{margin:10px}.cdm .cdmContentInner{margin:10px;line-height:1.5;font-size:16px}.cdm .cdmContentInner h1{font-size:16px}.cdm .cdmContentInner h2,.cdm .cdmContentInner h3,.cdm .cdmContentInner h4{font-size:15px}.cdm .cdmIntermediate img,.cdm .cdmIntermediate video,.cdm .cdmContentInner img,.cdm .cdmContentInner video{border-width:0;max-width:98%;height:auto}.cdm.expanded{margin-top:4px;margin-bottom:4px}.cdm.expanded .cdmFooter{border:0 solid #ddd;border-bottom-width:1px}.cdm.expanded>hr{margin-top:0;margin-bottom:0}.cdm.expandable{background-color:#f0f0f0;border:0 solid #ddd;border-bottom-width:1px}.cdm.expandable>hr{display:none}.cdm.expandable div.cdmHeader span.titleWrap{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:500px}.cdm.expandable.Unread{background:#fff}.cdm.expandable.Selected{background:#f9fbff}.cdm.expandable.active{background:#fff ! important}div.cdm.expandable.active div.cdmHeader span.titleWrap{white-space:normal}div.cdm.expandable div.cdmHeader a.title{font-weight:600;color:#555;font-size:14px;-webkit-transition:color .2s;transition:color .2s;text-rendering:optimizelegibility;font-family:"Segoe WP Semibold","Segoe UI Semibold","Segoe UI Web Semibold","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif}div.cdm.expandable.Unread div.cdmHeader a.title{color:#000}div.cdm.expandable.active div.cdmHeader a.title{color:#08c;font-size:16px;font-weight:600;text-rendering:optimizelegibility;font-family:"Segoe WP Semibold","Segoe UI Semibold","Segoe UI Web Semibold","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif}div.cdm.expanded div.cdmHeader{background:transparent ! important}div.cdm.expanded div.cdmHeader a.title{font-size:16px;color:#999;font-weight:600;-webkit-transition:color .2s;transition:color .2s;text-rendering:optimizelegibility;font-family:"Segoe WP Semibold","Segoe UI Semibold","Segoe UI Web Semibold","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif}div.cdm.expanded.active{background:#fff}div.cdm.expanded.active div.cdmHeader a.title{color:#08c}div.cdm.expanded.Unread div.cdmHeader a.title{color:#000}div.cdm.expanded div.cdmContent{color:#555}div.cdm.expanded.Unread div.cdmContent{color:#000}div.cdm.active div.cdmContent{color:#000}span.cdmExcerpt{white-space:nowrap;font-size:11px;color:#999;font-weight:normal;cursor:pointer}div.cdmContent div.postEnclosures{margin-top:1em;color:#555}div.cdmFeedTitle{border:0 solid #08c;border-bottom-width:1px;padding:5px 3px 5px 5px}div.cdmFeedTitle a.title{color:#555;font-weight:bold}div.cdmFeedTitle a{color:#555}div.cdmFeedTitle a:hover{color:#08c}div.cdmHeader span.hlFeed{float:right;font-weight:normal;font-style:italic}div.cdmHeader div.hlFeed,div.cdmHeader div.hlFeed a{vertical-align:middle;color:#555;font-weight:normal;font-style:italic;font-size:11px}div.cdm .hlFeed a{border-radius:4px;display:inline-block;padding:1px 4px 1px 4px}div.cdmContentInner p{-webkit-hyphens:auto;-moz-hyphens:auto;hyphens:auto}div.cdmContentInner iframe{min-width:50%;max-width:98%}div.cdmHeader span.author{white-space:nowrap;color:#555;font-size:11px;font-weight:normal}div#floatingTitle{position:absolute;z-index:5;top:0;right:0;left:0;border:0 solid #ddd;border-bottom-width:1px;background:#fff;color:#555;box-shadow:0 1px 1px -1px rgba(0,0,0,0.1)}div#floatingTitle>*{display:table-cell;white-space:nowrap;vertical-align:middle;padding:9px 5px}div#floatingTitle img{margin-right:4px;margin-left:4px}div#floatingTitle span.author{color:#555;font-size:11px;font-weight:normal}div#floatingTitle a.title{font-size:16px;color:#999;-webkit-transition:color .2s;transition:color .2s;font-weight:600;text-rendering:optimizelegibility;font-family:"Segoe WP Semibold","Segoe UI Semibold","Segoe UI Web Semibold","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif}div#floatingTitle img.anchor{margin-left:0}div#floatingTitle div.hlFeed{padding-right:10px;color:#555;font-weight:normal;font-style:italic;font-size:11px;white-space:nowrap}div#floatingTitle div.hlFeed a{border-radius:4px;display:inline-block;padding:1px 4px 1px 4px}div#floatingTitle span.updated{padding-right:10px;white-space:nowrap;color:#555;font-size:11px}div#floatingTitle div.hlFeed a{color:#555}div#floatingTitle span.titleWrap{width:100%;white-space:normal}div#floatingTitle .dijit,div#floatingTitle img.hlScorePic{display:none}div#floatingTitle.Unread a.title{color:#000}.cdm.high .cdmHeader a.title.high,.cdm.high .cdmHeader .cdmExcerpt,.cdm.high .cdmHeader span.author{color:#0a0}.cdm.Unread.high .cdmHeader a.title.high,.cdm.Unread.high .cdmHeader .cdmExcerpt,.cdm.Unread.high .cdmHeader span.author{color:#0d0}.cdm .cdmHeader a.title.low,.cdm.low .cdmHeader .cdmExcerpt,.cdm.Unread .cdmHeader a.title.low,.cdm.Unread.low .cdmHeader .cdmExcerpt,.cdm.low .cdmHeader span.author{color:#909090;text-decoration:line-through}.cdmFeedTitle>*{display:table-cell;vertical-align:middle}.cdmFeedTitle a.title{width:100%}.cdmFeedTitle a.catchup{text-align:right;color:#555;padding-right:10px;font-size:11px;white-space:nowrap}.cdmFeedTitle a.catchup:hover{color:#08c}body#ttrssPrefs{background-color:#f5f5f5}body#ttrssPrefs #footer,body#ttrssPrefs #header{background-color:#f5f5f5;padding-left:8px;padding-right:8px}body#ttrssPrefs #header a:hover{color:#000}body#ttrssPrefs #header img{vertical-align:middle;cursor:pointer}body#ttrssPrefs div#pref-tabs .dijitContentPane{font-size:13px}body#ttrssPrefs div#pref-tabs{box-shadow:0 1px 1px -1px rgba(0,0,0,0.1);margin:0 5px 0 5px}body#ttrssPrefs div#pref-tabs .dijitContentPane h3{font-size:14px}body#ttrssPrefs #pref-filter-wrap,body#ttrssPrefs #pref-filter-header,body#ttrssPrefs #pref-filter-content,body#ttrssPrefs #pref-label-wrap,body#ttrssPrefs #pref-label-header,body#ttrssPrefs #pref-label-content,body#ttrssPrefs #pref-user-wrap,body#ttrssPrefs #pref-user-header,body#ttrssPrefs #pref-user-content,body#ttrssPrefs #pref-instance-wrap,body#ttrssPrefs #pref-instance-header,body#ttrssPrefs #pref-instance-content{margin:0;padding:0;border-width:0}body#ttrssPrefs #userConfigTab,body#ttrssPrefs #labelConfigTab,body#ttrssPrefs #filterConfigTab,body#ttrssPrefs #pref-feeds-feeds,body#ttrssPrefs #instanceConfigTab{padding:0}body#ttrssPrefs table.prefPrefsList h3{margin-top:.5em;margin-bottom:0}body#ttrssPrefs tr.title td{border-width:0 0 1px 0;border-color:#ecf4ff;border-style:solid;color:#08c}body#ttrssPrefs div.prefProfileHolder,body#ttrssPrefs div.prefFeedOPMLHolder,body#ttrssPrefs div.inactiveFeedHolder{height:300px;overflow:auto;border-width:0 1px 1px 1px;border-color:#ddd;border-style:solid;margin:0 0 5px 0;background-color:#fff}body#ttrssPrefs div.filterTestHolder,body#ttrssPrefs div.prefFeedOPMLHolder{border-width:1px}body#ttrssPrefs ul.userFeedList{height:200px;overflow:auto;list-style-type:none;border:1px solid #ddd;margin:0 0 5px 0;padding:5px}body#ttrssPrefs div#feedlistLoading,body#ttrssPrefs div#filterlistLoading,body#ttrssPrefs div#labellistLoading{text-align:center;padding:5px;color:#555}body#ttrssPrefs div#feedlistLoading img,body#ttrssPrefs div#filterlistLoading img,body#ttrssPrefs div#labellistLoading{margin-right:5px}body#ttrssPrefs #errorButton{color:#f00}body#ttrssPrefs table.prefPluginsList td label,body#ttrssPrefs table.prefUserList td{cursor:pointer}body#ttrssPrefs table.prefPluginsList label{white-space:nowrap}body#ttrssPrefs table.prefPluginsList label img{vertical-align:middle}body#ttrssPrefs table.prefErrorLog tr.errrow td{font-size:10px}body#ttrssPrefs table.prefErrorLog tr.errrow td.errno{font-style:italic;font-weight:bold;white-space:nowrap}body#ttrssPrefs table.prefErrorLog td.filename,body#ttrssPrefs table.prefErrorLog td.login,body#ttrssPrefs table.prefErrorLog td.timestamp{color:#555}body#ttrssPrefs hr{border-color:#ecf4ff;max-width:100%}.claro .dijitTreeRow .dijitCheckBox{position:relative;top:-2px}.claro .dijitTreeLabel{outline:0}.claro .dijitTree .feedParam{color:#555;float:right;margin-right:1em}.claro .dijitTree .filterRules{display:block;color:#ccc;font-size:10px;margin-left:100px}.claro .dijitTree .filterRules span{display:block;color:#008000}.claro #filterDlg_Matches span.filterRule{color:#008000}.claro .dijitTree .filterRules span.inverse,.claro #filterDlg_Matches span.filterRule.inverse{color:#f00}.claro .dijitTree .labelParam{float:right;margin-right:1em}.claro .dijitTree .dijitTreeLabel.filterDisabled,.claro .dijitTree .labelParam.filterDisabled{color:#555;text-decoration:line-through}.claro .dijitTreeRow.Error{color:#f00}.claro .dijitTreeRow.Hidden{display:none}.claro .dijitTreeNode .loadingNode{margin-left:3px;height:9px}.claro .dijitFolderClosed,.claro .dijitFolderOpened{display:none}.claro .dijitTreeNode .dijitCheckBox{margin-left:4px}.claro .dijitTreeIsRoot>.dijitTreeRow>.dijitTreeExpando{margin-left:5px}.claro .dijitTree .dijitTreeExpando{margin-top:0;opacity:.6}.claro .dijitTree .dijitTreeNode{padding:0;border-width:0}.claro .dijitTree .dijitTreeRowSelected{background:#fff}.claro .dijitTree .dijitTreeRowHover{background:#f0f0f0;border-color:#ddd}.claro .dijitTree .dijitTreeRowSelected{background:#fff;border-color:#ddd}.claro .dijitTreeRowSelected .dijitTreeLabel{text-shadow:1px 1px 2px #fff}.claro .dijitTreeRow .dijitTreeExpando{background-image:url("../images/treeExpandImages.png");position:relative;top:-1px}.claro .dijitTreeRow .dijitTreeExpandoLeaf{background:none}.claro .dijitToolbar{background:#f5f5f5;border-color:#ddd}.claro .dijitDialog .dijitToolbar{border:1px solid #ddd}.claro .dijitDialog h2{margin-top:0;margin-bottom:4px;border-width:0}.claro .dijitMenu .dijitMenuItem .dijitMenuItemLabel{font-size:13px;padding-top:3px;padding-bottom:3px}.claro .dijitCheckBox{background-image:url("../images/untick.png");background-color:transparent;width:15px;height:15px;margin:1px;opacity:.7;background-position:center center;transition:opacity .25s;-webkit-transition:opacity .25s;padding:1px}.claro .dijitCheckBox:hover{opacity:1}.claro .dijitCheckBox.dijitCheckBoxDisabled:hover{opacity:.7}.claro .dijitCheckBox.dijitCheckBoxChecked{border-color:#69c671;background-image:url("../images/tick.png");opacity:1}.claro .dijitButton.danger .dijitButtonText{color:#fff}.claro .dijitButton.danger{text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-moz-linear-gradient(top, #ee5f5b, #bd362f);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));background-image:-webkit-linear-gradient(top, #ee5f5b, #bd362f);background-image:-o-linear-gradient(top, #ee5f5b, #bd362f);background-image:linear-gradient(to bottom, #ee5f5b, #bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.claro .dijitButton.dijitButtonDisabled.danger,.claro .dijitButton.dijitButtonActive.danger,.claro .dijitButton.dijitButtonHover.danger,.claro .dijitButton.dijitFocused.danger{color:#fff;background-color:#bd362f;*background-color:#a9302a}.claro .dijitButton.dijitButtonActive.danger{background-color:#942a25 \9}.claro .dijitDropDownButton{margin:0}.claro .dijitDropDownButton .dijitButtonNode{padding:0}.claro .dijitButton.dijitButtonActive.danger{color:rgba(255,255,255,0.75)}.claro .dijitButton .dijitButtonNode,.claro .dijitDropDownButton .dijitButtonNode,.claro .dijitComboButton .dijitButtonNode,.claro .dijitToolbar .dijitDropDownButton .dijitButtonNode,.claro .dijitToolbar .dijitComboButton,.claro .dijitToolbar .dijitSelect.dijitDownArrowButton .dijitButtonNode,.claro .dijitToolbar .dijitComboButton .dijitButtonNode{background:none;border-color:transparent;box-shadow:none}.claro button,.claro input[type="submit"]{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px}.claro button,.claro input[type="submit"],.claro .dijitButton,.claro .dijitDropDownButton .dijitDownArrowButton,.claro .dijitComboButton{display:inline-block;padding:4px 12px;margin-bottom:0;font-size:14px;line-height:20px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;background-image:-moz-linear-gradient(top, #fff, #e6e6e6);background-image:-webkit-linear-gradient(top, #fff, #e6e6e6);background-image:linear-gradient(to bottom, #fff, #e6e6e6);background-repeat:repeat-x;border:1px solid #ccc;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border-bottom-color:#b3b3b3;-webkit-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);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.claro button:hover,.claro button:focus,.claro button:active,.claro input[type="submit"]:hover,.claro input[type="submit"]:focus,.claro input[type="submit"]:active,.claro .dijitButton:hover,.claro .dijitButton:focus,.claro .dijitButton:active,.claro .dijitDropDownButton .dijitDownArrowButton:hover,.claro .dijitDropDownButton .dijitDownArrowButton:focus,.claro .dijitDropDownButton .dijitDownArrowButton:active,.claro .dijitComboButton:hover,.claro .dijitComboButton:focus,.claro .dijitComboButton:active,.claro .dijitButton.dijitButtonDisabled{color:#333;background-color:#e6e6e6}.claro button:active,.claro input[type="submit"]:active,.claro .dijitButton:active,.claro .dijitDropDownButton .dijitDownArrowButton:active,.claro .dijitComboButton:active{background-color:#cccccc \9}.claro .dijitToolbar .dijitButton,.claro .dijitToolbar .dijitButton.dijitHover,.claro .dijitToolbar .dijitComboButton,.claro .dijitToolbar .dijitDropDownButton .dijitDownArrowButton,.claro .dijitToolbar .dijitComboButton.dijitHover{background:none;border-color:transparent;box-shadow:none;padding:0;margin:0;line-height:auto;text-shadow:none}.claro .dijitToolbar .dijitDropDownButton .dijitButtonText,.claro .dijitToolbar .dijitDownArrowButton .dijitButtonText,.claro .dijitToolbar .dijitComboButton .dijitButtonText{padding:0}.claro .dijitToolbar .dijitDropDownButton .dijitButtonNode{border-radius:4px}.claro .dijitToolbar .dijitButton.dijitHover,.claro .dijitToolbar .dijitDropDownButton.dijitHover .dijitButtonNode,.claro .dijitToolbar .dijitComboButton.dijitHover{border-color:#ccc}.claro .dijitToolbar .dijitButton.dijitHover .dijitButtonNode,.claro .dijitToolbar .dijitButton.dijitButtonActive .dijitButtonNode{background:none}.claro .dijitToolbar .dijitButton .dijitButtonContents,.claro .dijitToolbar .dijitDropDownButton .dijitButtonContents,.claro .dijitToolbar .dijitComboButton .dijitButtonContents{font-size:13px}.claro button:hover,.claro button:focus,.claro input[type="submit"]:hover,.claro input[type="submit"]:focus,.claro .dijitButton:hover,.claro .dijitDropDownButton .dijitDownArrowButton:hover,.claro .dijitToolbar .dijitButton:hover .dijitButtonNode,.claro .dijitToolbar .dijitButton.dijitHover .dijitButtonNode,.claro .dijitButton:focus,.claro .dijitComboButton:hover,.claro .dijitComboButton:focus{color:#333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;transition:background-position .1s linear}.claro button:focus,.claro input[type="submit"]:focus,.claro .dijitButton:focus,.claro .dijitDropDownButton .dijitDownArrowButton:focus,.claro .dijitComboButton:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.claro button:active,.claro input[type="submit"]:active,.claro .dijitButton:active,.claro .dijitComboButton:active,.claro .dijitToolbar .dijitDropDownButton.dijitOpened,.claro .dijitToolbar .dijitComboButton.dijitOpened,.claro .dijitToolbar .dijitButton.dijitButtonActive .dijitButtonNode{background-image:none;outline:0;-webkit-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)}.claro input[type="submit"][disabled],.claro button[disabled],.claro .dijitButton[disabled],.claro .dijitDropDownButton .dijitDownArrowButton[disabled],.claro .dijitButton.dijitButtonDisabled,.claro .dijitComboButton.dijitButtonDisabled{cursor:default;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.claro .dijitButton .dijitButtonContents,.claro .dijitDropDownButton .dijitButtonContents,.claro .dijitComboButton .dijitButtonContents{font-size:14px;font-weight:normal;line-height:20px}.claro .dijitButton.small .dijitButtonText{font-size:11px}.claro .dijitMenu{border-color:rgba(82,168,236,0.8)}.claro .dijitMenu .dijitMenuItemSelected,.claro .dijitMenu .dijitMenuItemSelected td{background:#52a8ec;color:#fff;border-color:rgba(82,168,236,0.8)}.claro .dijitButton .dijitButtonNode,.claro .dijitComboButton .dijitButtonNode{padding:0}.claro .dijitAccordionTitle.dijitAccordionTitleHover,.claro .dijitAccordionTitle.dijitAccordionTitleFocused{background:#fff;transition:background .25s}.claro .dijitAccordionTitle{background:#f0f0f0;transition:background .25s}.claro .dijitAccordionInnerContainer.dijitAccordionInnerContainerSelected,.claro .dijitAccordionTitle.dijitAccordionTitleSelected{background:#08c;transition:background .25s}.claro .dijitAccordionTitle.dijitAccordionTitleSelected .dijitAccordionText{color:#fff}.claro .dijitAccordionInnerContainer.dijitAccordionInnerContainerSelected{border-color:#08c}.claro .dijitAccordionContainer .dijitAccordionChildWrapper{border-color:#ddd}.claro .dijitTabInner.dijitTab{background:#f0f0f0}.claro .dijitTabContent{background:#eee}.claro .dijitTabContent.dijitTabChecked,.claro .dijitTabContent.dijitTabHover,.claro .dijitTabContent.dijitFocused{background:#fff}.claro .dijitTabPaneWrapper,.claro .dijitTabContainerTop-tabs,.claro .dijitTab,.claro .dijitAccordionInnerContainer{border-color:#ddd}.claro .dijitComboBox .dijitArrowButton,.claro .dijitSelect .dijitArrowButton{background:transparent;border-color:transparent}.claro .dijitSelect .dijitArrowButton .dijitArrowButtonInner{margin-right:5px;float:right}.claro select,.claro .dijitDownArrowButton.dijitSelect{-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;margin-bottom:4px}.claro .dijitSelect .dijitButtonContents{display:inline-block;height:20px;padding:4px 6px;font-size:14px;line-height:20px;color:#555;vertical-align:middle;border-width:0}.claro select,.claro textarea,.claro .input.input-text,.claro .dijitTextBox{display:inline-block;height:20px;padding:4px 6px;font-size:14px;line-height:20px;color:#555;vertical-align:middle;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;margin-bottom:4px}.claro textarea{height:auto}.claro select,.claro .input.input-text{height:30px}.claro textarea,.claro select,.claro .input.input-text,.claro .dijitTextBox,.claro .dijitSelect{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}.claro select:focus,.claro .input.input-text:focus,.claro .dijitTextBox.dijitFocused,.claro .dijitSelect.dijitFocused{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6)}.claro .dijitError .dijitValidationContainer{padding:0;width:13px;border-width:1px;display:none}.claro .dijitSelect.dijitSelectDisabled{background-color:#eee}.claro .dijitSelect.dijitSelectDisabled .dijitSelectLabel{cursor:not-allowed}.claro .dijitTextBox.dijitTextBoxDisabled,.claro .dijitTextBox.dijitTextBoxDisabled .dijitInputInner,.claro .dijitTextBox.dijitReadOnly,.claro .dijitTextBox.dijitReadOnly .dijitInputInner{cursor:not-allowed;background-color:#eee}.claro .dijitToolbar .dijitDownArrowButton.dijitSelect{border-color:rgba(0,0,0,0.1)}.claro .dijitToolbar .dijitDownArrowButton.dijitSelect .dijitButtonContents{padding:2px 2px 0 4px}.claro .dijitToolbar .dijitDownArrowButton.dijitSelect{margin:0}.claro .dijitToolbar .dijitTextBox{padding:0;margin-bottom:0;border-radius:0}.claro .dijitDialog{border-radius:6px}.claro .dijitDialog .dijitDialogCloseIcon{margin-top:5px}.claro .dijitDialog .dijitDialogTitleBar{background:#fff;padding:8px;font-weight:600;color:#555;font-size:16px;text-rendering:optimizelegibility;font-family:"Segoe WP Semibold","Segoe UI Semibold","Segoe UI Web Semibold","Segoe UI",Ubuntu,"Helvetica Neue",Helvetica,Arial,sans-serif}.claro .dijitDialog .dijitDialogPaneContent{border-color:#ddd;padding:10px}.claro .dijitProgressBar.dijitProgressBarEmpty{background:#ddd;border-color:#08c}.claro .dijitProgressBar.dijitProgressBarEmpty .dijitProgressBarFull .dijitProgressBarTile{background:#52a8ec}.claro .dijitProgressBar .dijitProgressBarLabel{color:#fff} \ No newline at end of file
diff --git a/css/default.less b/css/default.less
new file mode 100644
index 000000000..73ad2b055
--- /dev/null
+++ b/css/default.less
@@ -0,0 +1,11 @@
+@fonts-ui-bold: "Segoe WP Semibold", "Segoe UI Semibold", "Segoe UI Web Semibold", "Segoe UI", Ubuntu, "Helvetica Neue", Helvetica, Arial, sans-serif;
+@fonts-ui: "Segoe UI Web", "Segoe UI", Ubuntu, "Helvetica Neue", Helvetica, Arial, sans-serif;
+
+@color-accent: rgb(82, 168, 236);
+@color-accent-light: #ecf4ff;
+@color-link: #0088cc;
+
+@import "tt-rss.less";
+@import "cdm.less";
+@import "prefs.less";
+@import "dijit.less"; \ No newline at end of file
diff --git a/css/dijit.css b/css/dijit.css
deleted file mode 100644
index b0c9243c4..000000000
--- a/css/dijit.css
+++ /dev/null
@@ -1,666 +0,0 @@
-/* Tree */
-
-.claro .dijitTreeRow .dijitCheckBox {
- position : relative;
- top : -2px;
-}
-
-.claro .dijitTreeLabel {
- outline : 0;
-}
-
-.claro .dijitTree .feedParam {
- color : #555;
- float : right;
- margin-right : 1em;
-}
-
-.claro .dijitTree .filterRules {
- display : block;
- color : #ccc;
- font-size : 10px;
- margin-left : 100px;
-}
-
-.claro .dijitTree .filterRules span {
- display : block;
- color : green;
-}
-
-#filterDlg_Matches span.filterRule {
- color : green;
-}
-
-.claro .dijitTree .filterRules span.inverse,
-#filterDlg_Matches span.filterRule.inverse {
- color : red;
-}
-
-
-.claro .dijitTree .labelParam {
- float : right;
- margin-right : 1em;
-}
-
-.claro .dijitTree .dijitTreeLabel.filterDisabled,
-.claro .dijitTree .labelParam.filterDisabled {
- color : #555;
- text-decoration: line-through;
-}
-
-.claro .dijitTreeRow.Error {
- color : red;
-}
-
-.claro .dijitTreeRow.Hidden {
- display : none;
-}
-
-.claro .dijitTreeNode .loadingNode {
- margin-left : 3px;
- height : 9px;
-}
-
-.claro .dijitFolderClosed,
-.claro .dijitFolderOpened {
- display : none;
-}
-
-.claro .dijitTreeNode .dijitCheckBox {
- margin-left : 4px;
-}
-
-.claro .dijitTreeIsRoot > .dijitTreeRow > .dijitTreeExpando {
- margin-left : 5px;
-}
-
-.claro .dijitTree .dijitTreeExpando {
- margin-top : 0px;
- opacity : 0.6;
-}
-
-.claro .dijitTree .dijitTreeNode {
- padding : 0px;
- border-width : 0px;
-}
-
-/*.claro .dijitTree .dijitTreeRow {
- max-width: 100%;
- overflow: hidden;
- text-overflow: ellipsis;
-}*/
-
-.claro .dijitTree .dijitTreeRowSelected {
- background : white;
-}
-
-.claro .dijitTree .dijitTreeRowHover {
- background : #f0f0f0;
- border-color : #ddd;
-}
-
-.claro .dijitTree .dijitTreeRowSelected {
- background : white;
- border-color : #ddd;
-}
-
-.claro .dijitTreeRowSelected .dijitTreeLabel {
- text-shadow : 1px 1px 2px #fff;
-}
-
-.claro .dijitTreeRow .dijitTreeExpando {
- background-image: url("../images/treeExpandImages.png");
- position : relative;
- top : -1px;
-}
-
-.claro .dijitTreeRow .dijitTreeExpandoLeaf {
- background : none;
-}
-
-/* Toolbar */
-
-.claro .dijitToolbar {
- background : #f5f5f5;
- border-color : #ddd;
- /* text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", "Helvetica Neue",
- Helvetica, Arial, sans-serif; */
-}
-
-/* .claro .dijitToolbar {
- text-shadow : 1px 1px 2px #fff;
-} */
-
-.claro .dijitDialog .dijitToolbar {
- border : 1px solid #ddd;
-}
-
-/* Dialog */
-
-.claro .dijitDialog h2 {
- margin-top : 0px;
- margin-bottom : 4px;
- border-width : 0px;
-}
-
-.claro .dijitMenu .dijitMenuItem .dijitMenuItemLabel {
- font-size : 13px;
- padding-top : 3px;
- padding-bottom : 3px;
-}
-
-/* Checkbox */
-
-.claro .dijitCheckBox {
- background-image : url("../images/untick.png");
- background-color : transparent;
- width : 15px;
- height : 15px;
- margin : 1px;
- opacity : 0.7;
- background-position : center center;
- transition : opacity 0.25s;
- -webkit-transition : opacity 0.25s;
- /* border : 1px solid #b5bcc7; */
- padding : 1px;
-}
-
- .claro .dijitCheckBox:hover {
- opacity : 1;
-}
-
-.claro .dijitCheckBox.dijitCheckBoxDisabled:hover {
- opacity : 0.7;
-}
-
-.claro .dijitCheckBox.dijitCheckBoxChecked {
- border-color : #69C671;
- background-image : url("../images/tick.png");
- opacity : 1;
-}
-
-/* Various buttons */
-
-.claro .dijitButton.danger .dijitButtonText {
- color: #ffffff;
-}
-
-.claro .dijitButton.danger {
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
- background-color: #da4f49;
- *background-color: #bd362f;
- background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));
- background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f);
- background-image: -o-linear-gradient(top, #ee5f5b, #bd362f);
- background-image: linear-gradient(to bottom, #ee5f5b, #bd362f);
- background-repeat: repeat-x;
- border-color: #bd362f #bd362f #802420;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
-}
-
-.claro .dijitButton.dijitButtonDisabled.danger,
-.claro .dijitButton.dijitButtonActive.danger,
-.claro .dijitButton.dijitButtonHover.danger,
-.claro .dijitButton.dijitFocused.danger {
- color: #ffffff;
- background-color: #bd362f;
- *background-color: #a9302a;
-}
-
-.claro .dijitButton.dijitButtonActive.danger {
- background-color: #942a25 \9;
-}
-
-.claro .dijitDropDownButton {
- margin : 0px;
-}
-
-.claro .dijitDropDownButton .dijitButtonNode {
- padding : 0px;
-}
-
-.claro .dijitButton.dijitButtonActive.danger {
- color: rgba(255, 255, 255, 0.75);
-}
-
-.claro .dijitButton .dijitButtonNode,
-.claro .dijitDropDownButton .dijitButtonNode,
-.claro .dijitComboButton .dijitButtonNode,
-.claro .dijitToolbar .dijitDropDownButton .dijitButtonNode,
-.claro .dijitToolbar .dijitComboButton,
-.claro .dijitToolbar .dijitSelect.dijitDownArrowButton .dijitButtonNode,
-.claro .dijitToolbar .dijitComboButton .dijitButtonNode {
- background : none;
- border-color : transparent;
- box-shadow : none;
-}
-
-button,
-input[type="submit"] {
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
- font-size : 14px;
-}
-
-button,
-input[type="submit"],
-.claro .dijitButton,
-.claro .dijitDropDownButton .dijitDownArrowButton,
-.claro .dijitComboButton {
- display: inline-block;
- padding: 4px 12px;
- margin-bottom: 0;
- font-size: 14px;
- line-height: 20px;
- color: #333333;
- text-align: center;
- text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
- vertical-align: middle;
- cursor: pointer;
- background-color: #f5f5f5;
- background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
- background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
- background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
- background-repeat: repeat-x;
- border: 1px solid #cccccc;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- border-bottom-color: #b3b3b3;
- -webkit-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);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-}
-
-button:hover,
-button:focus,
-button:active,
-input[type="submit"]:hover,
-input[type="submit"]:focus,
-input[type="submit"]:active,
-.claro .dijitButton:hover,
-.claro .dijitButton:focus,
-.claro .dijitButton:active,
-.claro .dijitDropDownButton .dijitDownArrowButton:hover,
-.claro .dijitDropDownButton .dijitDownArrowButton:focus,
-.claro .dijitDropDownButton .dijitDownArrowButton:active,
-.claro .dijitComboButton:hover,
-.claro .dijitComboButton:focus,
-.claro .dijitComboButton:active,
-.claro .dijitButton.dijitButtonDisabled {
- color: #333333;
- background-color: #e6e6e6;
-}
-
-button:active,
-input[type="submit"]:active,
-.claro .dijitButton:active,
-.claro .dijitDropDownButton .dijitDownArrowButton:active,
-.claro .dijitComboButton:active {
- background-color: #cccccc \9;
-}
-
-.claro .dijitToolbar .dijitButton,
-.claro .dijitToolbar .dijitButton.dijitHover,
-.claro .dijitToolbar .dijitComboButton,
-.claro .dijitToolbar .dijitDropDownButton .dijitDownArrowButton,
-.claro .dijitToolbar .dijitComboButton.dijitHover {
- background : none;
- border-color : transparent;
- box-shadow : none;
- padding : 0px;
- margin : 0px;
- line-height : auto;
- text-shadow : none;
-}
-
-.claro .dijitToolbar .dijitDropDownButton .dijitButtonText,
-.claro .dijitToolbar .dijitDownArrowButton .dijitButtonText,
-.claro .dijitToolbar .dijitComboButton .dijitButtonText {
- padding : 0px;
-}
-
-.claro .dijitToolbar .dijitDropDownButton .dijitButtonNode {
- border-radius : 4px;
-}
-
-.claro .dijitToolbar .dijitButton.dijitHover,
-.claro .dijitToolbar .dijitDropDownButton.dijitHover .dijitButtonNode,
-.claro .dijitToolbar .dijitComboButton.dijitHover {
- border-color : #ccc;
-}
-
-.claro .dijitToolbar .dijitButton.dijitHover .dijitButtonNode,
-.claro .dijitToolbar .dijitButton.dijitButtonActive .dijitButtonNode {
- background : none;
-}
-
-.claro .dijitToolbar .dijitButton .dijitButtonContents,
-.claro .dijitToolbar .dijitDropDownButton .dijitButtonContents,
-.claro .dijitToolbar .dijitComboButton .dijitButtonContents {
- font-size : 13px;
-}
-
-button:hover,
-button:focus,
-input[type="submit"]:hover,
-input[type="submit"]:focus,
-.claro .dijitButton:hover,
-.claro .dijitDropDownButton .dijitDownArrowButton:hover,
-.claro .dijitToolbar .dijitButton:hover .dijitButtonNode,
-.claro .dijitToolbar .dijitButton.dijitHover .dijitButtonNode,
-.claro .dijitButton:focus,
-.claro .dijitComboButton:hover,
-.claro .dijitComboButton:focus {
- color: #333333;
- text-decoration: none;
- background-position: 0 -15px;
- -webkit-transition: background-position 0.1s linear;
- transition: background-position 0.1s linear;
-}
-
-button:focus,
-input[type="submit"]:focus,
-.claro .dijitButton:focus,
-.claro .dijitDropDownButton .dijitDownArrowButton:focus,
-.claro .dijitComboButton:focus {
- outline: thin dotted #333;
- outline: 5px auto -webkit-focus-ring-color;
- outline-offset: -2px;
-}
-
-button:active,
-input[type="submit"]:active,
-.claro .dijitButton:active,
-.claro .dijitComboButton:active,
-.claro .dijitToolbar .dijitDropDownButton.dijitOpened,
-.claro .dijitToolbar .dijitComboButton.dijitOpened,
-.claro .dijitToolbar .dijitButton.dijitButtonActive .dijitButtonNode {
- background-image: none;
- outline: 0;
- -webkit-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);
-}
-
-input[type="submit"][disabled],
-button[disabled],
-.claro .dijitButton[disabled],
-.claro .dijitDropDownButton .dijitDownArrowButton[disabled],
-.claro .dijitButton.dijitButtonDisabled,
-.claro .dijitComboButton.dijitButtonDisabled {
- cursor: default;
- background-image: none;
- opacity: 0.65;
- filter: alpha(opacity=65);
- -webkit-box-shadow: none;
- box-shadow: none;
-}
-
-.claro .dijitButton .dijitButtonContents,
-.claro .dijitDropDownButton .dijitButtonContents,
-.claro .dijitComboButton .dijitButtonContents {
- font-size : 14px;
- font-weight : normal;
- line-height : 20px;
-}
-
-.claro .dijitButton.small .dijitButtonText {
- font-size : 11px;
-}
-
-.claro .dijitMenu {
- border-color: rgba(82, 168, 236, 0.8);
-}
-
-.claro .dijitMenu .dijitMenuItemSelected,
-.claro .dijitMenu .dijitMenuItemSelected td {
- background : rgb(82, 168, 236);
- color : white;
- border-color : rgba(82, 168, 236, 0.8);
-}
-
-.claro .dijitButton .dijitButtonNode,
-.claro .dijitComboButton .dijitButtonNode {
- padding : 0px;
-}
-
-/* Other stuff */
-
-/* .claro .dijitAccordionTitleFocus {
- text-shadow : 1px 1px 2px #fff;
-}
-
-.claro .dijitAccordionTitle {
- text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", "Helvetica Neue",
- Helvetica, Arial, sans-serif;
-} */
-
-
-.claro .dijitAccordionTitle.dijitAccordionTitleHover,
-.claro .dijitAccordionTitle.dijitAccordionTitleFocused {
- background : white;
- transition : background 0.25s;
-}
-.claro .dijitAccordionTitle {
- background : #f0f0f0;
- transition : background 0.25s;
-}
-
-.claro .dijitAccordionInnerContainer.dijitAccordionInnerContainerSelected,
-.claro .dijitAccordionTitle.dijitAccordionTitleSelected {
- background : #0088cc;
- transition : background 0.25s;
-}
-
-.claro .dijitAccordionTitle.dijitAccordionTitleSelected .dijitAccordionText {
- color : white;
-}
-
-.claro .dijitAccordionInnerContainer.dijitAccordionInnerContainerSelected {
- border-color : #0088cc;
-}
-
-.claro .dijitAccordionContainer .dijitAccordionChildWrapper {
- border-color : #ddd;
-}
-
-/* Tabs */
-
-.claro .dijitTabInner.dijitTab {
- background : #f0f0f0;
-}
-
-.claro .dijitTabContent {
- background : #eee;
-}
-
-.claro .dijitTabContent.dijitTabChecked,
-.claro .dijitTabContent.dijitTabHover,
-.claro .dijitTabContent.dijitFocused {
- background : white;
-}
-
-.claro .dijitTabPaneWrapper,
-.claro .dijitTabContainerTop-tabs,
-.claro .dijitTab,
-.claro .dijitAccordionInnerContainer {
- border-color : #ddd;
-}
-
-/* Text fields & selects */
-
-.claro .dijitComboBox .dijitArrowButton,
-.claro .dijitSelect .dijitArrowButton {
- background : transparent;
- border-color : transparent;
-}
-
-.claro .dijitSelect .dijitArrowButton .dijitArrowButtonInner {
- margin-right : 5px;
- float :right;
-}
-
-.claro select,
-.claro .dijitDownArrowButton.dijitSelect {
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
- margin-bottom : 4px;
-
-}
-
-.claro .dijitSelect .dijitButtonContents {
- display: inline-block;
- height: 20px;
- padding: 4px 6px;
- font-size: 14px;
- line-height: 20px;
- color: #555555;
- vertical-align: middle;
- border-width : 0px;
-}
-
-.claro select,
-.claro textarea,
-.claro .input.input-text,
-.claro .dijitTextBox {
- display: inline-block;
- height: 20px;
- padding: 4px 6px;
- font-size: 14px;
- line-height: 20px;
- color: #555555;
- vertical-align: middle;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
- margin-bottom : 4px;
-}
-.claro textarea {
- height : auto;
-}
-
-.claro select,
-.claro .input.input-text {
- height : 30px;
-}
-
-.claro textarea,
-.claro select,
-.claro .input.input-text,
-.claro .dijitTextBox,
-.claro .dijitSelect {
- background-color: #ffffff;
- border: 1px solid #cccccc;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
- -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
- -o-transition: border linear 0.2s, box-shadow linear 0.2s;
- transition: border linear 0.2s, box-shadow linear 0.2s;
-}
-
-.claro select:focus,
-.claro .input.input-text:focus,
-.claro .dijitTextBox.dijitFocused,
-.claro .dijitSelect.dijitFocused {
- border-color: rgba(82, 168, 236, 0.8);
- outline: 0;
- outline: thin dotted \9;
- /* IE6-9 */
-
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
- -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
-}
-
-.claro .dijitError .dijitValidationContainer {
- padding : 0px;
- width : 13px;
- border-width : 1px;
- display : none;
-}
-
-.claro .dijitSelect.dijitSelectDisabled {
- background-color: #eeeeee;
-}
-
-.claro .dijitSelect.dijitSelectDisabled .dijitSelectLabel {
- cursor: not-allowed;
-}
-
-.claro .dijitTextBox.dijitTextBoxDisabled,
-.claro .dijitTextBox.dijitTextBoxDisabled .dijitInputInner,
-.claro .dijitTextBox.dijitReadOnly,
-.claro .dijitTextBox.dijitReadOnly .dijitInputInner {
- cursor: not-allowed;
- background-color: #eeeeee;
-}
-
-.claro .dijitToolbar .dijitDownArrowButton.dijitSelect {
- border-color : rgba(0,0,0,0.1);
-}
-
-.claro .dijitToolbar .dijitDownArrowButton.dijitSelect .dijitButtonContents {
- padding : 2px 2px 0px 4px;
-}
-
-.claro .dijitToolbar .dijitDownArrowButton.dijitSelect {
- margin : 0px;
-}
-
-.claro .dijitToolbar .dijitTextBox {
- padding : 0px;
- margin-bottom : 0px;
- border-radius : 0px;
-}
-
-/* dialog */
-
-.claro .dijitDialog {
- border-radius : 6px;
-
-}
-
-.claro .dijitDialog .dijitDialogCloseIcon {
- margin-top : 5px;
-}
-
-.claro .dijitDialog .dijitDialogTitleBar {
- background : white;
- padding : 8px;
- font-weight : 600;
- color : #555;
- font-size : 16px;
- text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
-}
-
-.claro .dijitDialog .dijitDialogPaneContent {
- border-color : #ddd;
- padding : 10px;
-}
-
-.claro .dijitProgressBar.dijitProgressBarEmpty {
- background : #ddd;
- border-color : #0088cc;
-}
-
-.claro .dijitProgressBar.dijitProgressBarEmpty .dijitProgressBarFull .dijitProgressBarTile {
- background : rgb(82, 168, 236);
-
-}
-
-.claro .dijitProgressBar .dijitProgressBarLabel {
- color : white;
-}
-
-
diff --git a/css/dijit.less b/css/dijit.less
new file mode 100644
index 000000000..b350a79da
--- /dev/null
+++ b/css/dijit.less
@@ -0,0 +1,664 @@
+/* Tree */
+
+.claro {
+
+ .dijitTreeRow .dijitCheckBox {
+ position: relative;
+ top: -2px;
+ }
+
+ .dijitTreeLabel {
+ outline: 0;
+ }
+
+ .dijitTree .feedParam {
+ color: #555;
+ float: right;
+ margin-right: 1em;
+ }
+
+ .dijitTree .filterRules {
+ display: block;
+ color: #ccc;
+ font-size: 10px;
+ margin-left: 100px;
+ }
+
+ .dijitTree .filterRules span {
+ display: block;
+ color: green;
+ }
+
+ #filterDlg_Matches span.filterRule {
+ color: green;
+ }
+
+ .dijitTree .filterRules span.inverse,
+ #filterDlg_Matches span.filterRule.inverse {
+ color: red;
+ }
+
+ .dijitTree .labelParam {
+ float: right;
+ margin-right: 1em;
+ }
+
+ .dijitTree .dijitTreeLabel.filterDisabled,
+ .dijitTree .labelParam.filterDisabled {
+ color: #555;
+ text-decoration: line-through;
+ }
+
+ .dijitTreeRow.Error {
+ color: red;
+ }
+
+ .dijitTreeRow.Hidden {
+ display: none;
+ }
+
+ .dijitTreeNode .loadingNode {
+ margin-left: 3px;
+ height: 9px;
+ }
+
+ .dijitFolderClosed,
+ .dijitFolderOpened {
+ display: none;
+ }
+
+ .dijitTreeNode .dijitCheckBox {
+ margin-left: 4px;
+ }
+
+ .dijitTreeIsRoot > .dijitTreeRow > .dijitTreeExpando {
+ margin-left: 5px;
+ }
+
+ .dijitTree .dijitTreeExpando {
+ margin-top: 0px;
+ opacity: 0.6;
+ }
+
+ .dijitTree .dijitTreeNode {
+ padding: 0px;
+ border-width: 0px;
+ }
+
+ /*.dijitTree .dijitTreeRow {
+ max-width: 100%;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ }*/
+
+ .dijitTree .dijitTreeRowSelected {
+ background: white;
+ }
+
+ .dijitTree .dijitTreeRowHover {
+ background: #f0f0f0;
+ border-color: #ddd;
+ }
+
+ .dijitTree .dijitTreeRowSelected {
+ background: white;
+ border-color: #ddd;
+ }
+
+ .dijitTreeRowSelected .dijitTreeLabel {
+ text-shadow: 1px 1px 2px #fff;
+ }
+
+ .dijitTreeRow .dijitTreeExpando {
+ background-image: url("../images/treeExpandImages.png");
+ position: relative;
+ top: -1px;
+ }
+
+ .dijitTreeRow .dijitTreeExpandoLeaf {
+ background: none;
+ }
+
+ /* Toolbar */
+
+ .dijitToolbar {
+ background: #f5f5f5;
+ border-color: #ddd;
+ /* text-rendering: optimizelegibility;
+ font-family : "Segoe WP Semibold", "Segoe UI Semibold",
+ "Segoe UI Web Semibold", "Segoe UI", "Helvetica Neue",
+ Helvetica, Arial, sans-serif; */
+ }
+
+ /* .dijitToolbar {
+ text-shadow : 1px 1px 2px #fff;
+ } */
+
+ .dijitDialog .dijitToolbar {
+ border: 1px solid #ddd;
+ }
+
+ /* Dialog */
+
+ .dijitDialog h2 {
+ margin-top: 0px;
+ margin-bottom: 4px;
+ border-width: 0px;
+ }
+
+ .dijitMenu .dijitMenuItem .dijitMenuItemLabel {
+ font-size: 13px;
+ padding-top: 3px;
+ padding-bottom: 3px;
+ }
+
+ /* Checkbox */
+
+ .dijitCheckBox {
+ background-image: url("../images/untick.png");
+ background-color: transparent;
+ width: 15px;
+ height: 15px;
+ margin: 1px;
+ opacity: 0.7;
+ background-position: center center;
+ transition: opacity 0.25s;
+ -webkit-transition: opacity 0.25s;
+ /* border : 1px solid #b5bcc7; */
+ padding: 1px;
+ }
+
+ .dijitCheckBox:hover {
+ opacity: 1;
+ }
+
+ .dijitCheckBox.dijitCheckBoxDisabled:hover {
+ opacity: 0.7;
+ }
+
+ .dijitCheckBox.dijitCheckBoxChecked {
+ border-color: #69C671;
+ background-image: url("../images/tick.png");
+ opacity: 1;
+ }
+
+ /* Various buttons */
+
+ .dijitButton.danger .dijitButtonText {
+ color: #ffffff;
+ }
+
+ .dijitButton.danger {
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+ background-color: #da4f49;
+ *background-color: #bd362f;
+ background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f);
+ background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));
+ background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f);
+ background-image: -o-linear-gradient(top, #ee5f5b, #bd362f);
+ background-image: linear-gradient(to bottom, #ee5f5b, #bd362f);
+ background-repeat: repeat-x;
+ border-color: #bd362f #bd362f #802420;
+ border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0);
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
+ }
+
+ .dijitButton.dijitButtonDisabled.danger,
+ .dijitButton.dijitButtonActive.danger,
+ .dijitButton.dijitButtonHover.danger,
+ .dijitButton.dijitFocused.danger {
+ color: #ffffff;
+ background-color: #bd362f;
+ *background-color: #a9302a;
+ }
+
+ .dijitButton.dijitButtonActive.danger {
+ background-color: #942a25 \9;
+ }
+
+ .dijitDropDownButton {
+ margin: 0px;
+ }
+
+ .dijitDropDownButton .dijitButtonNode {
+ padding: 0px;
+ }
+
+ .dijitButton.dijitButtonActive.danger {
+ color: rgba(255, 255, 255, 0.75);
+ }
+
+ .dijitButton .dijitButtonNode,
+ .dijitDropDownButton .dijitButtonNode,
+ .dijitComboButton .dijitButtonNode,
+ .dijitToolbar .dijitDropDownButton .dijitButtonNode,
+ .dijitToolbar .dijitComboButton,
+ .dijitToolbar .dijitSelect.dijitDownArrowButton .dijitButtonNode,
+ .dijitToolbar .dijitComboButton .dijitButtonNode {
+ background: none;
+ border-color: transparent;
+ box-shadow: none;
+ }
+
+ button,
+ input[type="submit"] {
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+ font-size: 14px;
+ }
+
+ button,
+ input[type="submit"],
+ .dijitButton,
+ .dijitDropDownButton .dijitDownArrowButton,
+ .dijitComboButton {
+ display: inline-block;
+ padding: 4px 12px;
+ margin-bottom: 0;
+ font-size: 14px;
+ line-height: 20px;
+ color: #333333;
+ text-align: center;
+ text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
+ vertical-align: middle;
+ cursor: pointer;
+ background-color: #f5f5f5;
+ background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
+ background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
+ background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
+ background-repeat: repeat-x;
+ border: 1px solid #cccccc;
+ border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ border-bottom-color: #b3b3b3;
+ -webkit-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);
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+ }
+
+ button:hover,
+ button:focus,
+ button:active,
+ input[type="submit"]:hover,
+ input[type="submit"]:focus,
+ input[type="submit"]:active,
+ .dijitButton:hover,
+ .dijitButton:focus,
+ .dijitButton:active,
+ .dijitDropDownButton .dijitDownArrowButton:hover,
+ .dijitDropDownButton .dijitDownArrowButton:focus,
+ .dijitDropDownButton .dijitDownArrowButton:active,
+ .dijitComboButton:hover,
+ .dijitComboButton:focus,
+ .dijitComboButton:active,
+ .dijitButton.dijitButtonDisabled {
+ color: #333333;
+ background-color: #e6e6e6;
+ }
+
+ button:active,
+ input[type="submit"]:active,
+ .dijitButton:active,
+ .dijitDropDownButton .dijitDownArrowButton:active,
+ .dijitComboButton:active {
+ background-color: #cccccc \9;
+ }
+
+ .dijitToolbar .dijitButton,
+ .dijitToolbar .dijitButton.dijitHover,
+ .dijitToolbar .dijitComboButton,
+ .dijitToolbar .dijitDropDownButton .dijitDownArrowButton,
+ .dijitToolbar .dijitComboButton.dijitHover {
+ background: none;
+ border-color: transparent;
+ box-shadow: none;
+ padding: 0px;
+ margin: 0px;
+ line-height: auto;
+ text-shadow: none;
+ }
+
+ .dijitToolbar .dijitDropDownButton .dijitButtonText,
+ .dijitToolbar .dijitDownArrowButton .dijitButtonText,
+ .dijitToolbar .dijitComboButton .dijitButtonText {
+ padding: 0px;
+ }
+
+ .dijitToolbar .dijitDropDownButton .dijitButtonNode {
+ border-radius: 4px;
+ }
+
+ .dijitToolbar .dijitButton.dijitHover,
+ .dijitToolbar .dijitDropDownButton.dijitHover .dijitButtonNode,
+ .dijitToolbar .dijitComboButton.dijitHover {
+ border-color: #ccc;
+ }
+
+ .dijitToolbar .dijitButton.dijitHover .dijitButtonNode,
+ .dijitToolbar .dijitButton.dijitButtonActive .dijitButtonNode {
+ background: none;
+ }
+
+ .dijitToolbar .dijitButton .dijitButtonContents,
+ .dijitToolbar .dijitDropDownButton .dijitButtonContents,
+ .dijitToolbar .dijitComboButton .dijitButtonContents {
+ font-size: 13px;
+ }
+
+ button:hover,
+ button:focus,
+ input[type="submit"]:hover,
+ input[type="submit"]:focus,
+ .dijitButton:hover,
+ .dijitDropDownButton .dijitDownArrowButton:hover,
+ .dijitToolbar .dijitButton:hover .dijitButtonNode,
+ .dijitToolbar .dijitButton.dijitHover .dijitButtonNode,
+ .dijitButton:focus,
+ .dijitComboButton:hover,
+ .dijitComboButton:focus {
+ color: #333333;
+ text-decoration: none;
+ background-position: 0 -15px;
+ -webkit-transition: background-position 0.1s linear;
+ transition: background-position 0.1s linear;
+ }
+
+ button:focus,
+ input[type="submit"]:focus,
+ .dijitButton:focus,
+ .dijitDropDownButton .dijitDownArrowButton:focus,
+ .dijitComboButton:focus {
+ outline: thin dotted #333;
+ outline: 5px auto -webkit-focus-ring-color;
+ outline-offset: -2px;
+ }
+
+ button:active,
+ input[type="submit"]:active,
+ .dijitButton:active,
+ .dijitComboButton:active,
+ .dijitToolbar .dijitDropDownButton.dijitOpened,
+ .dijitToolbar .dijitComboButton.dijitOpened,
+ .dijitToolbar .dijitButton.dijitButtonActive .dijitButtonNode {
+ background-image: none;
+ outline: 0;
+ -webkit-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);
+ }
+
+ input[type="submit"][disabled],
+ button[disabled],
+ .dijitButton[disabled],
+ .dijitDropDownButton .dijitDownArrowButton[disabled],
+ .dijitButton.dijitButtonDisabled,
+ .dijitComboButton.dijitButtonDisabled {
+ cursor: default;
+ background-image: none;
+ opacity: 0.65;
+ filter: alpha(opacity=65);
+ -webkit-box-shadow: none;
+ box-shadow: none;
+ }
+
+ .dijitButton .dijitButtonContents,
+ .dijitDropDownButton .dijitButtonContents,
+ .dijitComboButton .dijitButtonContents {
+ font-size: 14px;
+ font-weight: normal;
+ line-height: 20px;
+ }
+
+ .dijitButton.small .dijitButtonText {
+ font-size: 11px;
+ }
+
+ .dijitMenu {
+ border-color: rgba(82, 168, 236, 0.8);
+ }
+
+ .dijitMenu .dijitMenuItemSelected,
+ .dijitMenu .dijitMenuItemSelected td {
+ background: rgb(82, 168, 236);
+ color: white;
+ border-color: rgba(82, 168, 236, 0.8);
+ }
+
+ .dijitButton .dijitButtonNode,
+ .dijitComboButton .dijitButtonNode {
+ padding: 0px;
+ }
+
+ /* Other stuff */
+
+ /* .dijitAccordionTitleFocus {
+ text-shadow : 1px 1px 2px #fff;
+ }
+
+ .dijitAccordionTitle {
+ text-rendering: optimizelegibility;
+ font-family : "Segoe WP Semibold", "Segoe UI Semibold",
+ "Segoe UI Web Semibold", "Segoe UI", "Helvetica Neue",
+ Helvetica, Arial, sans-serif;
+ } */
+
+ .dijitAccordionTitle.dijitAccordionTitleHover,
+ .dijitAccordionTitle.dijitAccordionTitleFocused {
+ background: white;
+ transition: background 0.25s;
+ }
+ .dijitAccordionTitle {
+ background: #f0f0f0;
+ transition: background 0.25s;
+ }
+
+ .dijitAccordionInnerContainer.dijitAccordionInnerContainerSelected,
+ .dijitAccordionTitle.dijitAccordionTitleSelected {
+ background: #0088cc;
+ transition: background 0.25s;
+ }
+
+ .dijitAccordionTitle.dijitAccordionTitleSelected .dijitAccordionText {
+ color: white;
+ }
+
+ .dijitAccordionInnerContainer.dijitAccordionInnerContainerSelected {
+ border-color: #0088cc;
+ }
+
+ .dijitAccordionContainer .dijitAccordionChildWrapper {
+ border-color: #ddd;
+ }
+
+ /* Tabs */
+
+ .dijitTabInner.dijitTab {
+ background: #f0f0f0;
+ }
+
+ .dijitTabContent {
+ background: #eee;
+ }
+
+ .dijitTabContent.dijitTabChecked,
+ .dijitTabContent.dijitTabHover,
+ .dijitTabContent.dijitFocused {
+ background: white;
+ }
+
+ .dijitTabPaneWrapper,
+ .dijitTabContainerTop-tabs,
+ .dijitTab,
+ .dijitAccordionInnerContainer {
+ border-color: #ddd;
+ }
+
+ /* Text fields & selects */
+
+ .dijitComboBox .dijitArrowButton,
+ .dijitSelect .dijitArrowButton {
+ background: transparent;
+ border-color: transparent;
+ }
+
+ .dijitSelect .dijitArrowButton .dijitArrowButtonInner {
+ margin-right: 5px;
+ float: right;
+ }
+
+ select,
+ .dijitDownArrowButton.dijitSelect {
+ -webkit-border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
+ margin-bottom: 4px;
+
+ }
+
+ .dijitSelect .dijitButtonContents {
+ display: inline-block;
+ height: 20px;
+ padding: 4px 6px;
+ font-size: 14px;
+ line-height: 20px;
+ color: #555555;
+ vertical-align: middle;
+ border-width: 0px;
+ }
+
+ select,
+ textarea,
+ .input.input-text,
+ .dijitTextBox {
+ display: inline-block;
+ height: 20px;
+ padding: 4px 6px;
+ font-size: 14px;
+ line-height: 20px;
+ color: #555555;
+ vertical-align: middle;
+ -webkit-border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
+ margin-bottom: 4px;
+ }
+ textarea {
+ height: auto;
+ }
+
+ select,
+ .input.input-text {
+ height: 30px;
+ }
+
+ textarea,
+ select,
+ .input.input-text,
+ .dijitTextBox,
+ .dijitSelect {
+ background-color: #ffffff;
+ border: 1px solid #cccccc;
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+ -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+ -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
+ -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
+ -o-transition: border linear 0.2s, box-shadow linear 0.2s;
+ transition: border linear 0.2s, box-shadow linear 0.2s;
+ }
+
+ select:focus,
+ .input.input-text:focus,
+ .dijitTextBox.dijitFocused,
+ .dijitSelect.dijitFocused {
+ border-color: rgba(82, 168, 236, 0.8);
+ outline: 0;
+ outline: thin dotted \9;
+ /* IE6-9 */
+
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
+ -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
+ }
+
+ .dijitError .dijitValidationContainer {
+ padding: 0px;
+ width: 13px;
+ border-width: 1px;
+ display: none;
+ }
+
+ .dijitSelect.dijitSelectDisabled {
+ background-color: #eeeeee;
+ }
+
+ .dijitSelect.dijitSelectDisabled .dijitSelectLabel {
+ cursor: not-allowed;
+ }
+
+ .dijitTextBox.dijitTextBoxDisabled,
+ .dijitTextBox.dijitTextBoxDisabled .dijitInputInner,
+ .dijitTextBox.dijitReadOnly,
+ .dijitTextBox.dijitReadOnly .dijitInputInner {
+ cursor: not-allowed;
+ background-color: #eeeeee;
+ }
+
+ .dijitToolbar .dijitDownArrowButton.dijitSelect {
+ border-color: rgba(0, 0, 0, 0.1);
+ }
+
+ .dijitToolbar .dijitDownArrowButton.dijitSelect .dijitButtonContents {
+ padding: 2px 2px 0px 4px;
+ }
+
+ .dijitToolbar .dijitDownArrowButton.dijitSelect {
+ margin: 0px;
+ }
+
+ .dijitToolbar .dijitTextBox {
+ padding: 0px;
+ margin-bottom: 0px;
+ border-radius: 0px;
+ }
+
+ /* dialog */
+
+ .dijitDialog {
+ border-radius: 6px;
+
+ }
+
+ .dijitDialog .dijitDialogCloseIcon {
+ margin-top: 5px;
+ }
+
+ .dijitDialog .dijitDialogTitleBar {
+ background: white;
+ padding: 8px;
+ font-weight: 600;
+ color: #555;
+ font-size: 16px;
+ text-rendering: optimizelegibility;
+ font-family: @fonts-ui-bold;
+ }
+
+ .dijitDialog .dijitDialogPaneContent {
+ border-color: #ddd;
+ padding: 10px;
+ }
+
+ .dijitProgressBar.dijitProgressBarEmpty {
+ background: #ddd;
+ border-color: #0088cc;
+ }
+
+ .dijitProgressBar.dijitProgressBarEmpty .dijitProgressBarFull .dijitProgressBarTile {
+ background: rgb(82, 168, 236);
+
+ }
+
+ .dijitProgressBar .dijitProgressBarLabel {
+ color: white;
+ }
+
+} \ No newline at end of file
diff --git a/css/layout.css b/css/layout.css
index 3351331c0..376f9e63f 100644
--- a/css/layout.css
+++ b/css/layout.css
@@ -2,6 +2,6 @@ html, body#ttrssMain, body#ttrssPrefs, #main {
width: 100%;
height: 100%;
border: 0;
- padding: 0;
+ padding: 0;
margin: 0;
}
diff --git a/css/prefs.css b/css/prefs.css
deleted file mode 100644
index 0a184ff9b..000000000
--- a/css/prefs.css
+++ /dev/null
@@ -1,129 +0,0 @@
-body#ttrssPrefs {
- background-color : #f5f5f5;
-}
-
-body#ttrssPrefs #footer, body#ttrssPrefs #header {
- background-color : #f5f5f5;
- padding-left : 8px;
- padding-right : 8px;
-}
-
-
-#header a:hover {
- color : black;
-}
-
-#header img {
- vertical-align : middle;
- cursor : pointer;
-}
-
-
-div#pref-tabs .dijitContentPane {
- font-size : 13px;
-}
-
-div#pref-tabs {
- box-shadow : 0px 1px 1px -1px rgba(0,0,0,0.1);
- margin : 0px 5px 0px 5px;
-}
-
-div#pref-tabs .dijitContentPane h3 {
- font-size : 14px;
-}
-
-#pref-filter-wrap, #pref-filter-header, #pref-filter-content,
-#pref-label-wrap, #pref-label-header, #pref-label-content,
-#pref-user-wrap, #pref-user-header, #pref-user-content,
-#pref-instance-wrap, #pref-instance-header, #pref-instance-content {
- margin : 0px;
- padding : 0px;
- border-width : 0px;
-}
-
-#userConfigTab, #labelConfigTab, #filterConfigTab, #pref-feeds-feeds, #instanceConfigTab {
- padding : 0px;
-}
-
-/* preferences */
-
-table.prefPrefsList h3 {
- margin-top : 0.5em;
- margin-bottom : 0px;
-}
-
-tr.title td {
- border-width : 0px 0px 1px 0px;
- border-color : #ecf4ff;
- border-style : solid;
- color : #0088cc;
-}
-
-div.prefProfileHolder, div.prefFeedOPMLHolder, div.inactiveFeedHolder {
- height : 300px;
- overflow : auto;
- border-width : 0px 1px 1px 1px;
- border-color : #ddd;
- border-style : solid;
- margin : 0px 0px 5px 0px;
- background-color : white;
-}
-div.filterTestHolder, div.prefFeedOPMLHolder {
- border-width : 1px;
-}
-
-ul.userFeedList {
- height : 200px;
- overflow : auto;
- list-style-type : none;
- border : 1px solid #ddd;
- margin : 0px 0px 5px 0px;
- padding : 5px;
-}
-
-div#feedlistLoading, div#filterlistLoading, div#labellistLoading {
- text-align : center;
- padding : 5px;
- color : #555;
-}
-
-div#feedlistLoading img, div#filterlistLoading img, div#labellistLoading {
- margin-right : 5px;
-}
-
-#errorButton {
- color : red;
-}
-
-table.prefPluginsList td label, table.prefUserList td {
- cursor : pointer;
-}
-
-table.prefPluginsList label {
- white-space : nowrap;
-}
-
-table.prefPluginsList label img {
- vertical-align : middle;
-}
-
-table.prefErrorLog tr.errrow td {
- font-size : 10px;
-}
-
-table.prefErrorLog tr.errrow td.errno {
- font-style : italic;
- font-weight : bold;
- white-space : nowrap;
-}
-
-table.prefErrorLog td.filename, table.prefErrorLog td.login, table.prefErrorLog td.timestamp {
- color : #555;
-}
-
-body#ttrssPrefs hr {
- border-color : #ecf4ff;
- max-width : 100%;
-}
-
-
diff --git a/css/prefs.less b/css/prefs.less
new file mode 100644
index 000000000..a7b76bc7f
--- /dev/null
+++ b/css/prefs.less
@@ -0,0 +1,130 @@
+body#ttrssPrefs {
+ background-color : #f5f5f5;
+
+ #footer, #header {
+ background-color : #f5f5f5;
+ padding-left : 8px;
+ padding-right : 8px;
+ }
+
+ #header a:hover {
+ color : black;
+ }
+
+ #header img {
+ vertical-align : middle;
+ cursor : pointer;
+ }
+
+
+ div#pref-tabs .dijitContentPane {
+ font-size : 13px;
+ }
+
+ div#pref-tabs {
+ box-shadow : 0px 1px 1px -1px rgba(0,0,0,0.1);
+ margin : 0px 5px 0px 5px;
+ }
+
+ div#pref-tabs .dijitContentPane h3 {
+ font-size : 14px;
+ }
+
+ #pref-filter-wrap, #pref-filter-header, #pref-filter-content,
+ #pref-label-wrap, #pref-label-header, #pref-label-content,
+ #pref-user-wrap, #pref-user-header, #pref-user-content,
+ #pref-instance-wrap, #pref-instance-header, #pref-instance-content {
+ margin : 0px;
+ padding : 0px;
+ border-width : 0px;
+ }
+
+ #userConfigTab, #labelConfigTab, #filterConfigTab, #pref-feeds-feeds, #instanceConfigTab {
+ padding : 0px;
+ }
+
+ /* preferences */
+
+ table.prefPrefsList h3 {
+ margin-top : 0.5em;
+ margin-bottom : 0px;
+ }
+
+ tr.title td {
+ border-width : 0px 0px 1px 0px;
+ border-color : #ecf4ff;
+ border-style : solid;
+ color : @color-link;
+ }
+
+ div.prefProfileHolder, div.prefFeedOPMLHolder, div.inactiveFeedHolder {
+ height : 300px;
+ overflow : auto;
+ border-width : 0px 1px 1px 1px;
+ border-color : #ddd;
+ border-style : solid;
+ margin : 0px 0px 5px 0px;
+ background-color : white;
+ }
+ div.filterTestHolder, div.prefFeedOPMLHolder {
+ border-width : 1px;
+ }
+
+ ul.userFeedList {
+ height : 200px;
+ overflow : auto;
+ list-style-type : none;
+ border : 1px solid #ddd;
+ margin : 0px 0px 5px 0px;
+ padding : 5px;
+ }
+
+ div#feedlistLoading, div#filterlistLoading, div#labellistLoading {
+ text-align : center;
+ padding : 5px;
+ color : #555;
+ }
+
+ div#feedlistLoading img, div#filterlistLoading img, div#labellistLoading {
+ margin-right : 5px;
+ }
+
+ #errorButton {
+ color : red;
+ }
+
+ table.prefPluginsList td label, table.prefUserList td {
+ cursor : pointer;
+ }
+
+ table.prefPluginsList label {
+ white-space : nowrap;
+ }
+
+ table.prefPluginsList label img {
+ vertical-align : middle;
+ }
+
+ table.prefErrorLog tr.errrow td {
+ font-size : 10px;
+ }
+
+ table.prefErrorLog tr.errrow td.errno {
+ font-style : italic;
+ font-weight : bold;
+ white-space : nowrap;
+ }
+
+ table.prefErrorLog td.filename, table.prefErrorLog td.login, table.prefErrorLog td.timestamp {
+ color : #555;
+ }
+
+ hr {
+ border-color : #ecf4ff;
+ max-width : 100%;
+ }
+
+
+
+}
+
diff --git a/css/tt-rss.css b/css/tt-rss.less
index 866e95f29..f762cc665 100644
--- a/css/tt-rss.css
+++ b/css/tt-rss.less
@@ -1,4 +1,4 @@
-body#ttrssMain, body#ttrssPrefs, body#ttrssLogin, body {
+body {
background : white;
color : black;
margin : 0px;
@@ -12,144 +12,159 @@ body#ttrssMain {
max-height : 100%;
}
+:focus {
+ outline: none;
+}
+
div.postReply {
padding : 0px;
-}
-div.postReply div.postHeader {
- padding : 5px;
- margin-right : 4px;
- color : #909090;
- border-width : 0px 0px 1px 0px;
- border-color : #ddd;
- border-style : solid;
-}
+ div.postHeader {
+ padding : 5px;
+ margin-right : 4px;
+ color : #909090;
+ border: 0px solid #ddd;
+ border-bottom-width: 1px;
+
+ div.postDate {
+ text-align : right;
+ color : #909090;
+ float : right;
+ }
+
+ div {
+ padding-bottom : 3px;
+ }
+
+ span.author {
+ color : #555;
+ font-size : 11px;
+ font-weight : normal;
+ }
+ }
-div.postReply div.postTitle {
- overflow : hidden;
- text-overflow: ellipsis;
- white-space : nowrap;
- font-weight : 600;
- text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
-}
+ div.postTitle {
+ overflow : hidden;
+ text-overflow: ellipsis;
+ white-space : nowrap;
+ font-weight : 600;
+ text-rendering: optimizelegibility;
+ font-family : @fonts-ui-bold;
+ }
-div.postReply div.postDate {
- padding-left : 10px;
-}
+ div.postDate {
+ padding-left : 10px;
+ }
-div.postReply div.postContent {
- padding : 10px;
- font-size : 16px;
-}
+ div.postContent {
+ padding : 10px;
+ font-size : 16px;
+
+ img,
+ video {
+ border-width : 0px;
+ max-width : 98%;
+ height: auto;
+ }
+
+ h1 {
+ font-size : 16px;
+ }
+
+ h2,
+ h3,
+ h4 {
+ font-size : 15px;
+ }
+
+ p {
+ hyphens: auto;
+ }
+
+ iframe {
+ min-width : 50%;
+ max-width : 98%;
+ }
+ }
-div.postReply div.postContent img,
-div.postReply div.postContent video {
- border-width : 0px;
- max-width : 98%;
- height: auto;
-}
+ div.postEnclosures {
+ color : #555;
+ }
-div.postReply div.postEnclosures {
- color : #555;
-}
+ img.tagsPic {
+ width : 16px;
+ height : 16px;
+ margin-left : 4px;
+ vertical-align : middle;
+ }
-div.postReply img.tagsPic {
- width : 16px;
- height : 16px;
- margin-left : 4px;
- vertical-align : middle;
+ span.author {
+ font-size : 12px;
+ }
}
div.articleNote {
background-color : #fff7d5;
padding : 5px;
margin : 5px;
- border-style : solid;
- border-color : #e7d796;
- border-width : 1px;
+ border: 1px solid #e7d796;
color : #9a8c59;
-}
-div.articleNote div.noteEdit {
- float : right;
- cursor : pointer;
-}
-
-div.postReply span.author {
- font-size : 12px;
+ div.noteEdit {
+ float : right;
+ cursor : pointer;
+ }
}
h1 {
font-size : 18px;
font-weight : 600;
text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
+ font-family : @fonts-ui;
}
h2 {
font-size : 16px;
font-weight : 600;
- border-width : 0px 0px 1px 0px;
- border-style : solid;
- border-color : #ecf4ff;
+ border: 0px solid @color-accent-light;
+ border-bottom-width: 1px;
text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
+ font-family : @fonts-ui;
}
h3 {
font-size : 13px;
- border-width : 0px 0px 1px 0px;
- border-style : solid;
- border-color : #ecf4ff;
+ border: 0px solid @color-accent-light;
+ border-bottom-width: 1px;
font-weight : 600;
text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
+ font-family : @fonts-ui;
}
h4 {
font-size : 14px;
font-weight : 600;
text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
+ font-family : @fonts-ui;
}
hr {
- border-width : 0px 0px 1px 0px;
- border-style : solid;
- border-color : #ccc;
+ border: 0px solid #ccc;
+ border-bottom-width: 1px;
}
a {
- color: #0088cc;
+ color: @color-link;
text-decoration: none;
}
a:hover {
- color: #005580;
+ color: darken(@color-link, 20%);
text-decoration: underline;
}
-#piggie {
- z-index : 999;
- position : absolute;
-}
-
#notify.visible {
transform: translate(0, -35px);
- -webkit-transform: translate(0, -35px);
- -o-transform: translate(0, -35px);
- -moz-transform: translate(0, -35px);
}
#notify {
@@ -166,28 +181,25 @@ a:hover {
box-shadow : 0px -2px 2px rgba(0,0,0,0.1);
transition: all 0.5s ease-in-out;
- -webkit-transition: all 0.5s ease-in-out;
- -moz-transition: all 0.5s ease-in-out;
- -o-transition: all 0.5s ease-in-out;
-}
-#notify img {
- vertical-align : middle;
- max-height : 14px;
-}
+ img {
+ vertical-align : middle;
+ max-height : 14px;
+ }
-#notify span.msg {
- width : 100%;
-}
+ span.msg {
+ width : 100%;
+ }
-#notify img.close {
- cursor : pointer;
-}
+ img.close {
+ cursor : pointer;
+ }
-#notify span {
- display : table-cell;
- vertical-align : middle;
- padding : 2px;
+ span {
+ display : table-cell;
+ vertical-align : middle;
+ padding : 2px;
+ }
}
.notify {
@@ -201,8 +213,8 @@ a:hover {
}
.notify.notify_info {
- border-color : rgb(82, 168, 236);
- background-color : #ecf4ff;
+ border-color : @color-accent;
+ background-color : @color-accent-light;
}
.notify.notify_error {
@@ -210,21 +222,126 @@ a:hover {
border-color : #ff0000;
}
-.hl div.hlTitle a {
- font-weight : 600;
- text-rendering: optimizelegibility;
- font-family : "Segoe WP Semibold", "Segoe UI Semibold",
- "Segoe UI Web Semibold", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
- color : #777;
+.hl {
+ border: 0px solid #ddd;
+ border-bottom-width: 1px;
+ padding : 1px;
+
+ div.hlTitle {
+ display : table-cell;
+ cursor : pointer;
+ width : 100%;
+ vertical-align : middle;
+ overflow : hidden;
+ white-space : nowrap;
+ max-width : 500px;
+ text-overflow : ellipsis;
+ padding: 4px 6px;
+ }
+
+ div.hlLeft {
+ display : table-cell;
+ vertical-align : middle;
+ white-space: nowrap;
+ }
+
+ div.hlRight {
+ display : table-cell;
+ white-space: nowrap;
+ text-align : right;
+ vertical-align : middle;
+ }
+
+ div.hlRight img {
+ max-width : 16px;
+ max-height : 16px;
+ }
+
+ span.hlFeed {
+ display : table-cell;
+ vertical-align : middle;
+ text-align : right;
+ }
+
+ span.hlFeed a {
+ border-radius : 4px;
+ display : inline-block;
+ padding : 1px 4px 1px 4px;
+ font-size : 11px;
+ font-style : italic;
+ font-weight : normal;
+ color : #555;
+ white-space : nowrap;
+ }
+
+ span.hlFeed a:hover {
+ color : @color-accent;
+ }
+
+ span.hlUpdated {
+ color : #555;
+ display : table-cell;
+ vertical-align : middle;
+ text-align : right;
+ font-size : 11px;
+ white-space : nowrap;
+ padding-left : 10px;
+ }
+
+ span.hlUpdated div {
+ display : inline-block;
+ }
+
+ div.hlLeft {
+ padding-left : 8px;
+ }
+
+ div.hlLeft input {
+ margin-left : 4px;
+ margin-right : 4px;
+ }
+
+ div.hlLeft img, div.hlRight img {
+ margin : 0px 4px;
+ }
+
+ div.hlLeft img {
+ width : 16px;
+ height : 16px;
+ }
+
+ div.hlTitle a {
+ font-weight : 600;
+ text-rendering: optimizelegibility;
+ font-family : @fonts-ui;
+ color : #777;
+ }
+
+ a.title.high, span.hlContent.high .contentPreview {
+ color : #00aa00;
+ }
+}
+
+.hl.Unread a.title.high, .hl.Unread span.hlContent.high .contentPreview {
+ color : #00dd00;
+}
+
+.hl a.title.low, span.hlContent.low .contentPreview,
+.hl.Unread a.title.low, .hl.Unread span.hlContent.low .contentPreview {
+ color : #909090;
+ text-decoration : line-through;
}
.hl.Unread div.hlTitle a {
color : black;
}
+.hl.active {
+ background : @color-accent-light ! important;
+}
+
.hl.active div.hlTitle a {
- color : rgb(82, 168, 236);
+ color : @color-accent;
/* text-shadow : 1px 1px 2px #fff; */
}
@@ -236,17 +353,6 @@ a:hover {
color : #909090;
}
-.hl {
- border-width : 0px 0px 1px 0px;
- border-style : solid;
- border-color : #ddd;
- padding : 1px;
-}
-
-.hl.active {
- background : #ecf4ff ! important;
-}
-
div.filterTestHolder {
height : 300px;
overflow : auto;
@@ -256,31 +362,33 @@ div.filterTestHolder {
border-width : 1px;
}
-
-#content-insert blockquote, #headlines-frame blockquote, .dijitContentPane blockquote {
+#content-insert blockquote,
+#headlines-frame blockquote,
+.dijitContentPane blockquote {
margin : 5px 0px 5px 0px;
color : #555;
padding-left : 10px;
- border-width : 0px 0px 0px 4px;
- border-color : #ccc;
- border-style : solid;
+ border: 0px solid #ccc;
+ border-left-width: 4px;
}
-#content-insert code, #headlines-frame code, .dijitContentPane code {
+#content-insert code,
+#headlines-frame code,
+.dijitContentPane code {
color : #009900;
font-family : monospace;
font-size : 12px;
}
-#content-insert pre, #headlines-frame pre, .dijitContentPane pre {
+#content-insert pre,
+#headlines-frame pre,
+.dijitContentPane pre {
margin: 5px 0px 5px 0px;
padding: 10px;
color: #555;
font-family: monospace;
font-size: 12px;
- border-width: 0px;
- border-color: #ccc;
- border-style: solid;
+ border: 0px solid #ccc;
background: #f5f5f5;
display: block;
max-width: 98%;
@@ -293,8 +401,6 @@ div.filterTestHolder {
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
background-color: #fcf8e3;
border: 1px solid #fbeed5;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
border-radius: 4px;
}
@@ -366,68 +472,72 @@ div.prefHelp {
font-size : 11px;
}
-#main-toolbar > * {
- white-space : nowrap;
- display : table-cell;
- color : #999;
- overflow : hidden;
-}
+#main-toolbar {
-#main-toolbar > *,
-#main-toolbar table *,
-#main-toolbar .actionChooser * {
- text-rendering: optimizelegibility;
- font-family : "Segoe WP", "Segoe UI Web", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
- font-size : 12px;
+ > * {
+ white-space : nowrap;
+ display : table-cell;
+ color : #999;
+ overflow : hidden;
+ }
-}
+ > *,
+ table *,
+ .actionChooser * {
+ text-rendering: optimizelegibility;
+ font-family : @fonts-ui;
+ font-size : 12px;
-#main-toolbar #headlines-toolbar {
- padding-right : 4px;
- width : 100%;
-}
+ }
-#main-toolbar #headlines-toolbar span.holder {
- display : table;
- width : 100%;
-}
+ #headlines-toolbar {
+ padding-right : 4px;
+ width : 100%;
-#main-toolbar #headlines-toolbar span.holder > * {
- display : table-cell;
-}
+ span.holder {
+ display : table;
+ width : 100%;
+ }
-#main-toolbar #headlines-toolbar .main {
- text-align : right;
-}
+ span.holder > * {
+ display : table-cell;
+ }
-#main-toolbar #headlines-toolbar .main,
-#main-toolbar #headlines-toolbar .r {
- line-height : 24px;
-}
+ .main {
+ text-align : right;
+ }
-#headlines-toolbar span.r img {
- margin-right : 4px;
- position : relative;
- top : 3px;
-}
+ .main,
+ .r {
+ line-height : 24px;
+ }
-#headlines-toolbar span.r .error a {
- color : red;
-}
+ span.r img {
+ margin-right : 4px;
+ position : relative;
+ top : 3px;
+ }
-#main-toolbar #selected_prompt {
- font-style : italic;
- text-align : right;
- margin-right : 4px;
-}
+ span.r .error a {
+ color : red;
+ }
-@media (max-width: 992px) {
- #main-toolbar #selected_prompt {
- display : none;
+ }
+
+ #selected_prompt {
+ font-style : italic;
+ text-align : right;
+ margin-right : 4px;
+ }
+
+ @media (max-width: 992px) {
+ #selected_prompt {
+ display : none;
+ }
}
}
+
span.contentPreview {
color : #999;
font-weight : normal;
@@ -448,33 +558,10 @@ span.hlLabelRef {
border-radius : 4px;
}
-div.postHeader div.postDate {
- text-align : right;
- color : #909090;
- float : right;
-}
-
-div.postHeader div {
- padding-bottom : 3px;
-}
-
-#feedUpdateErrors {
- display : none;
-}
-
-#allEntryTags {
- border-width : 0px 0px 1px 0px;
- border-style : solid;
- border-color : #ddd;
- padding-bottom : 5px;
- display : none;
-}
-
img.markedPic, img.pubPic {
cursor : pointer;
vertical-align : middle;
opacity : 0.5;
- -webkit-transition : opacity 0.25s;
transition : opacity 0.25s;
}
@@ -506,12 +593,13 @@ ul.feedErrorsList {
border : 1px solid #ddd;
margin : 0px 0px 5px 0px;
padding : 5px;
-}
-ul.feedErrorsList em {
- color : #555;
+ em {
+ color : #555;
+ }
}
+
ul.browseFeedList {
height : 300px;
overflow : auto;
@@ -523,37 +611,26 @@ ul.browseFeedList {
list-style-type : none;
padding : 0px;
+ li {
+ margin : 0px;
+ padding : 2px 4px 2px 4px;
+ }
}
-ul.browseFeedList li {
- margin : 0px;
- padding : 2px 4px 2px 4px;
-}
-
-span.subscribers {
- color : #808080;
-}
-div.subscribers {
+.browseFeedList span.subscribers {
color : #808080;
- font-size : 12px;
- float : right;
-}
-
-div.browserDetails {
- margin : 5px 5px 5px 5px;
- padding : 5px;
}
ul.compact {
list-style-type : none;
margin : 0px;
padding : 0px;
-}
-ul.compact li {
- margin : 0px;
- padding : 0px;
+ li {
+ margin : 0px;
+ padding : 0px;
+ }
}
.noborder {
@@ -591,9 +668,8 @@ div.whiteBox {
text-align : center;
padding : 1em 1em 0px 1em;
font-size : 11px;
- border-width : 0px 0px 1px 0px;
- border-style : solid;
- border-color : #ddd;
+ border: 0px solid #ddd;
+ border-bottom-width: 1px;
}
div.autocomplete {
@@ -603,38 +679,30 @@ div.autocomplete {
border :1px solid #778899;
margin : 0px;
padding : 0px;
-}
-div.autocomplete ul {
- list-style-type : none;
- margin : 0px;
- padding : 0px;
-}
+ ul {
+ list-style-type : none;
+ margin : 0px;
+ padding : 0px;
+ }
-div.autocomplete ul li.selected {
- background-color : #fff7d5;
-}
+ ul li.selected {
+ background-color : #fff7d5;
+ }
-div.autocomplete ul li {
- list-style-type : none;
- display : block;
- margin : 0;
- padding : 2px;
- height : 32px;
- cursor : pointer;
+ ul li {
+ list-style-type : none;
+ display : block;
+ margin : 0;
+ padding : 2px;
+ height : 32px;
+ cursor : pointer;
+ }
}
-.hl .hlTitle {
- overflow : hidden;
- white-space : nowrap;
- max-width : 500px;
- text-overflow : ellipsis;
- padding-left : 6px;
- padding-right : 6px;
-}
div#headlines-frame.wide .hlTitle {
- max-width : auto;
+ max-width : none;
overflow : visible;
white-space : normal;
}
@@ -643,19 +711,6 @@ div#headlines-frame.wide .hl .hlFeed {
display : none;
}
-.hl a.title.high, span.hlContent.high .contentPreview {
- color : #00aa00;
-}
-.hl.Unread a.title.high, .hl.Unread span.hlContent.high .contentPreview {
- color : #00dd00;
-}
-
-.hl a.title.low, span.hlContent.low .contentPreview,
-.hl.Unread a.title.low, .hl.Unread span.hlContent.low .contentPreview {
- color : #909090;
- text-decoration : line-through;
-}
-
img.hlScorePic {
vertical-align : middle;
width : 16px;
@@ -677,6 +732,11 @@ div.dlgSecCont {
float : left;
font-size : 12px;
font-weight : normal;
+
+ > * {
+ position : relative;
+ top : -2px;
+ }
}
div.dlgSecCont hr, div.dlgSecSimple hr {
@@ -686,11 +746,6 @@ div.dlgSecCont hr, div.dlgSecSimple hr {
margin : 2px;
}
-div.dlgSecCont > * {
- position : relative;
- top : -2px;
-}
-
div.dlgButtons {
text-align : right;
clear : both;
@@ -718,7 +773,7 @@ div#cmdline {
color : #555;
font-weight : bold;
background-color : white;
- border : 1px solid rgb(82, 168, 236);
+ border : 1px solid @color-accent;
padding : 3px 5px 3px 5px;
z-index : 5;
}
@@ -729,97 +784,17 @@ div#cmdline {
width : 18px;
}
-div.hlTitle {
- display : table-cell;
- cursor : pointer;
- width : 100%;
- vertical-align : middle;
- padding-top : 4px;
- padding-bottom : 4px;
-}
-
-div.hlLeft {
- display : table-cell;
- vertical-align : middle;
- white-space: nowrap;
-}
-
-div.hlRight {
- display : table-cell;
- white-space: nowrap;
- text-align : right;
- vertical-align : middle;
-}
-
-div.hlRight img {
- max-width : 16px;
- max-height : 16px;
-}
-
-.hl span.hlFeed {
- display : table-cell;
- vertical-align : middle;
- text-align : right;
-}
-
-.hl span.hlFeed a {
- border-radius : 4px;
- display : inline-block;
- padding : 1px 4px 1px 4px;
- font-size : 11px;
- font-style : italic;
- font-weight : normal;
- color : #555;
- white-space : nowrap;
-}
-
-.hl span.hlFeed a:hover {
- color : rgb(82, 168, 236);
-}
-
-.hl span.hlUpdated {
- color : #555;
- display : table-cell;
- vertical-align : middle;
- text-align : right;
- font-size : 11px;
- white-space : nowrap;
- padding-left : 10px;
-}
-
-span.hlUpdated div {
- display : inline-block;
-}
-
-div.hlLeft {
- padding-left : 8px;
-}
-
-div.hlLeft input {
- margin-left : 4px;
- margin-right : 4px;
-}
-
-div.hlLeft img, div.hlRight img {
- margin : 0px 4px;
-}
-
-div.hlLeft img {
- width : 16px;
- height : 16px;
-}
-
div.fatalError {
margin-bottom : 10px;
-}
-div.fatalError button {
- margin-top : 5px;
-}
+ button {
+ margin-top : 5px;
+ }
-div.fatalError textarea {
- width : 565px;
- height : 200px;
+ textarea {
+ width : 565px;
+ height : 200px;
+ }
}
#ttrssMain #main {
@@ -842,9 +817,7 @@ div.fatalError textarea {
#feeds-holder {
padding : 0px;
- border-width : 0px 0px 0px 0px;
- border-style : solid;
- border-color : #ddd;
+ border: 0px solid #ddd;
overflow : hidden;
background : #f5f5f5;
box-shadow : inset -1px 0px 2px -1px rgba(0,0,0,0.1);
@@ -859,10 +832,11 @@ div.fatalError textarea {
#headlines-frame {
padding : 0px;
- border-width : 0px;
- border-color : #ddd;
+ border: 0px #ddd;
margin-top : 0px;
-webkit-overflow-scrolling : touch;
+ -webkit-transform: translateZ(0);
+ -webkit-backface-visibility: hidden;
}
#headlines-toolbar_splitter, #toolbar_splitter {
@@ -879,9 +853,8 @@ div.fatalError textarea {
#main-toolbar {
background : white;
- border-width : 0px 0px 1px 0px;
- border-color : #ddd;
- border-style : solid;
+ border: 0px solid #ddd;
+ border-bottom-width: 1px;
padding-left : 4px;
height : 26px;
@@ -962,16 +935,16 @@ img.feedIcon, img.tinyFeedIcon {
color : #555;
font-size : 11px;
font-style : italic;
-}
-#headlines-spacer a, #headlines-spacer span {
- color : #555;
- padding : 10px;
- display : block;
-}
+ a, span {
+ color : #555;
+ padding : 10px;
+ display : block;
+ }
-#headlines-spacer a:hover {
- color : rgb(82, 168, 236);
+ a:hover {
+ color : @color-accent;
+ }
}
ul#filterDlg_Matches, ul#filterDlg_Actions {
@@ -998,54 +971,26 @@ ul.helpKbList {
border : 1px solid #ddd;
margin : 0px 0px 5px 0px;
padding : 5px;
-}
-ul.helpKbList span.hksequence {
- width : 6em;
- margin-left : 20px;
- color : rgb(82, 168, 236);
- font-weight : bold;
- display : inline-block;
-}
+ span.hksequence {
+ width : 6em;
+ margin-left : 20px;
+ color : @color-accent;
+ font-weight : bold;
+ display : inline-block;
+ }
-ul.helpKbList h2 {
- margin-top : 0px;
+ h2 {
+ margin-top : 0px;
+ }
}
span.collapseBtn {
cursor : pointer;
-}
-
-span.collapseBtn img {
- vertical-align : middle;
-}
-
-div.postContent h1 {
- font-size : 16px;
-}
-
-div.postContent h2,
-div.postContent h3,
-div.postContent h4 {
- font-size : 15px;
-}
-
-div.postContent p {
- /*max-width : 650px;*/
- -webkit-hyphens: auto;
- -moz-hyphens: auto;
- hyphens: auto;
-}
-
-div.postContent iframe {
- min-width : 50%;
- max-width : 98%;
-}
-div.postHeader span.author {
- color : #555;
- font-size : 11px;
- font-weight : normal;
+ img {
+ vertical-align : middle;
+ }
}
select.attachments {
@@ -1059,16 +1004,6 @@ select.attachments {
vertical-align : middle;
}
-span.sel_links {
- margin-right : 4px;
- vertical-align : middle;
-}
-
-/*#feedTree img.feedIcon {
- position : relative;
- top : -2px;
-}*/
-
body#ttrssMain.claro #feedTree.dijitTree .dijitTreeNode .dijitTreeRowSelected {
box-shadow : -1px 0px 2px -1px rgba(0,0,0,0.1);
border-right-color : white;
@@ -1107,42 +1042,41 @@ body#ttrssMain #feedTree {
height : 100%;
overflow-x : hidden;
text-rendering: optimizelegibility;
- font-family : "Segoe UI Web", "Segoe UI", Ubuntu, "Helvetica Neue",
- Helvetica, Arial, sans-serif;
-}
+ font-family : @fonts-ui;
-body#ttrssMain #feedTree .counterNode.aux {
- background : #f0f0f0;
- color : #999;
- border-color : #f0f0f0;
-}
+ .counterNode.aux {
+ background : #f0f0f0;
+ color : #999;
+ border-color : #f0f0f0;
+ }
-body#ttrssMain #feedTree .counterNode {
- font-weight : bold;
- display : inline-block;
- font-size : 9px;
- text-align : center;
- border : 1px solid rgb(82, 168, 236);
- color : white;
- background : rgb(82, 168, 236);
- border-radius : 4px;
- vertical-align : middle;
- float : right;
- position : relative;
- line-height : 14px;
- margin-right : 8px;
- margin-top : 2px;
- min-width : 23px;
- height : 14px;
-}
+ .counterNode {
+ font-weight : bold;
+ display : inline-block;
+ font-size : 9px;
+ text-align : center;
+ border : 1px solid @color-accent;
+ color : white;
+ background : @color-accent;
+ border-radius : 4px;
+ vertical-align : middle;
+ float : right;
+ position : relative;
+ line-height : 14px;
+ margin-right : 8px;
+ margin-top : 2px;
+ min-width : 23px;
+ height : 14px;
+ }
-body#ttrssMain #feedTree .dijitTreeNode .loadingExpando {
- left : -3px;
- height : 22px;
- position : relative;
- top : -3px;
-}
+ .dijitTreeNode .loadingExpando {
+ left : -3px;
+ height : 22px;
+ position : relative;
+ top : -3px;
+ }
+}
span.highlight {
background-color : #ffff00;
@@ -1170,15 +1104,6 @@ body#ttrssMain #feedTree .dijitTreeRow img.dijitTreeExpandoLeaf {
position : relative;
}
-#headlines-frame {
- -webkit-transform: translateZ(0);
- -webkit-backface-visibility: hidden;
-}
-
-:focus {
- outline: none;
-}
-
.dijitDropDownButton.attachments .dijitButtonText {
font-size : 12px;
}
@@ -1189,4 +1114,112 @@ body#ttrssMain #feedTree .dijitTreeRow img.dijitTreeExpandoLeaf {
#editTagsDlg{
overflow: visible;
-} \ No newline at end of file
+}
+
+body#ttrssZoom {
+ margin-left : auto;
+ margin-right : auto;
+ padding : 20px;
+ max-width : 770px;
+ background : #f5f5f5;
+
+ div.postHeader div.postFeedTitle {
+ float : left;
+ text-align : right;
+ padding-left : 0px;
+ font-size : 11px;
+ }
+
+ div.postHeader a.postComments {
+ text-align : right;
+ padding-left : 0px;
+ font-size : 11px;
+ }
+
+ div.postHeader div.postDate {
+ float : none;
+ text-align : right;
+ padding-left : 0px;
+ color : #777;
+ font-size : 11px;
+ }
+
+ div.postHeader div.postTags {
+ color : #777;
+ font-size : 11px;
+ }
+
+ div.postHeader div.postTitle {
+ white-space : normal;
+ font-size : 16px;
+ }
+
+ div.postContent {
+ font-size : 15px;
+ line-height : 1.5;
+ }
+
+ div.postContent p {
+ -webkit-hyphens: auto;
+ -moz-hyphens: auto;
+ hyphens: auto;
+ }
+
+ div.postHeader {
+ margin : 10px;
+ border-width : 0px 0px 1px 0px;
+ border-style : solid;
+ border-color : #eee;
+ background : white;
+ }
+
+ div.postReply {
+ border : 1px solid #ddd;
+ background : white;
+ box-shadow : 0px 1px 1px -1px rgba(0,0,0,0.1);
+ border-radius : 6px;
+ }
+
+ div.footer {
+ margin-top : 1em;
+ text-align : center;
+ }
+
+ div.postContent img {
+ max-width : 730px;
+ height : auto;
+ }
+
+ div.postContent blockquote {
+ margin : 5px 0px 5px 0px;
+ color : #555;
+ padding-left : 10px;
+ border-width : 0px 0px 0px 4px;
+ border-color : #ccc;
+ border-style : solid;
+ }
+
+ div.postContent code {
+ color : #009900;
+ font-family : monospace;
+ font-size : 12px;
+ }
+
+ div.postContent pre {
+ margin : 5px 0px 5px 0px;
+ padding : 10px;
+ color : #555;
+ font-family : monospace;
+ font-size : 12px;
+ border-width : 0px;
+ border-color : #ccc;
+ border-style : solid;
+ background : #f5f5f5;
+ display : block;
+ max-width : 98%;
+ overflow : auto;
+ }
+
+
+}
+
diff --git a/css/utility.css b/css/utility.css
index 01aff091f..4afdb067a 100644
--- a/css/utility.css
+++ b/css/utility.css
@@ -1,4 +1,6 @@
-@import "dijit.css";
+body.sanity_failed {
+ background : #900;
+}
body {
background : #f5f5f5;
@@ -132,7 +134,7 @@ h2 {
font-size : 14pt;
border-width : 0px 0px 1px 0px;
border-color : #f0f0f0;
- border-style : solid;
+ border-style : solid;
}
div.content > h2 {
@@ -202,11 +204,11 @@ body#sharepopup table {
padding : 5px;
}
-body#sharepopup form {
+body#sharepopup form {
height : 100%;
}
-body#sharepopup input {
+body#sharepopup input {
width : 100%;
}
@@ -227,7 +229,7 @@ div.autocomplete ul {
font-size : 10px;
}
-div.autocomplete ul li.selected {
+div.autocomplete ul li.selected {
background-color : #fff7d5;
}
@@ -240,7 +242,7 @@ div.autocomplete ul li {
cursor : pointer;
}
-fieldset {
+fieldset {
border-width : 0px;
padding : 0px 0px 5px 0px;
margin : 0px;
diff --git a/include/functions.php b/include/functions.php
index 4265692ec..5667ac416 100644
--- a/include/functions.php
+++ b/include/functions.php
@@ -1,6 +1,6 @@
<?php
define('EXPECTED_CONFIG_VERSION', 26);
- define('SCHEMA_VERSION', 132);
+ define('SCHEMA_VERSION', 133);
define('LABEL_BASE_INDEX', -1024);
define('PLUGIN_FEED_BASE_INDEX', -128);
@@ -57,6 +57,9 @@
// do not cache files smaller than that (bytes)
define_default('CACHE_MAX_DAYS', 7);
// max age in days for various automatically cached (temporary) files
+ define_default('MAX_CONDITIONAL_INTERVAL', 3600*12);
+ // max interval between forced unconditional updates for servers
+ // not complying with http if-modified-since (seconds)
/* tunables end here */
@@ -2546,3 +2549,18 @@
}
}
+ function check_mysql_tables() {
+ $schema = db_escape_string(DB_NAME);
+
+ $result = db_query("SELECT engine, table_name FROM information_schema.tables WHERE
+ table_schema = '$schema' AND table_name LIKE 'ttrss_%' AND engine != 'InnoDB'");
+
+ $bad_tables = [];
+
+ while ($line = db_fetch_assoc($result)) {
+ array_push($bad_tables, $line);
+ }
+
+ return $bad_tables;
+ }
+
diff --git a/include/login_form.php b/include/login_form.php
index 0d956d207..41c3f173e 100644
--- a/include/login_form.php
+++ b/include/login_form.php
@@ -3,8 +3,7 @@
<head>
<title>Tiny Tiny RSS : Login</title>
<?php echo stylesheet_tag("lib/dijit/themes/claro/claro.css") ?>
- <?php echo stylesheet_tag("css/tt-rss.css") ?>
- <?php echo stylesheet_tag("css/dijit.css") ?>
+ <?php echo stylesheet_tag("css/default.css") ?>
<link rel="shortcut icon" type="image/png" href="images/favicon.png">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<?php
diff --git a/include/sanity_check.php b/include/sanity_check.php
index 39962219f..a84959f8e 100755
--- a/include/sanity_check.php
+++ b/include/sanity_check.php
@@ -156,6 +156,29 @@
if (!class_exists("DOMDocument")) {
array_push($errors, "PHP support for DOMDocument is required, but was not found.");
}
+
+ if (DB_TYPE == "mysql") {
+ $bad_tables = check_mysql_tables();
+
+ if (count($bad_tables) > 0) {
+ $bad_tables_fmt = [];
+
+ foreach ($bad_tables as $bt) {
+ array_push($bad_tables_fmt, sprintf("%s (%s)", $bt['table_name'], $bt['engine']));
+ }
+
+ $msg = "<p>The following tables use an unsupported MySQL engine: <b>" .
+ implode(", ", $bad_tables_fmt) . "</b>.</p>";
+
+ $msg .= "<p>The only supported engine on MySQL is InnoDB. MyISAM lacks functionality to run
+ tt-rss.
+ Please backup your data (via OPML) and re-import the schema before continuing.</p>
+ <p><b>WARNING: importing the schema would mean LOSS OF ALL YOUR DATA.</b></p>";
+
+
+ array_push($errors, $msg);
+ }
+ }
}
if (count($errors) > 0 && $_SERVER['REQUEST_URI']) { ?>
@@ -165,7 +188,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" href="css/utility.css">
</head>
- <body>
+ <body class='sanity_failed'>
<div class="floatingLogo"><img src="images/logo_small.png"></div>
<div class="content">
diff --git a/install/index.php b/install/index.php
index 883573001..9f817db17 100755
--- a/install/index.php
+++ b/install/index.php
@@ -3,7 +3,7 @@
<title>Tiny Tiny RSS - Installer</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" href="../css/utility.css">
- <link rel="stylesheet" type="text/css" href="../css/dijit.css">
+ <link rel="stylesheet" type="text/css" href="../css/default.css">
<style type="text/css">
textarea { font-size : 12px; }
</style>
diff --git a/locale/ru_RU/LC_MESSAGES/messages.mo b/locale/ru_RU/LC_MESSAGES/messages.mo
index 1a9fc2be6..565c0e8c9 100644
--- a/locale/ru_RU/LC_MESSAGES/messages.mo
+++ b/locale/ru_RU/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/locale/ru_RU/LC_MESSAGES/messages.po b/locale/ru_RU/LC_MESSAGES/messages.po
index f0d48000f..3796076b8 100644
--- a/locale/ru_RU/LC_MESSAGES/messages.po
+++ b/locale/ru_RU/LC_MESSAGES/messages.po
@@ -1996,7 +1996,7 @@ msgstr ""
#: classes/pref/feeds.php:744
#: classes/pref/feeds.php:922
msgid "Mark updated articles as unread"
-msgstr "Пометить все статьи как прочитанные?"
+msgstr "Отметить обновлённые статьи как непрочитанные"
#: classes/pref/feeds.php:748
msgid "Icon"
diff --git a/register.php b/register.php
index a6f42c65d..11f5d9284 100644
--- a/register.php
+++ b/register.php
@@ -96,7 +96,7 @@
<title>Create new account</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<?php echo stylesheet_tag("css/utility.css") ?>
-<?php echo stylesheet_tag("css/dijit.css") ?>
+<?php echo stylesheet_tag("css/default.css") ?>
<?php echo javascript_tag("js/functions.js") ?>
<?php echo javascript_tag("lib/prototype.js") ?>
<?php echo javascript_tag("lib/scriptaculous/scriptaculous.js?load=effects,controls") ?>
diff --git a/schema/ttrss_schema_mysql.sql b/schema/ttrss_schema_mysql.sql
index 67a22e6d9..ce299f4e0 100644
--- a/schema/ttrss_schema_mysql.sql
+++ b/schema/ttrss_schema_mysql.sql
@@ -102,6 +102,7 @@ create table ttrss_feeds (id integer not null auto_increment primary key,
update_interval integer not null default 0,
purge_interval integer not null default 0,
last_updated datetime default null,
+ last_unconditional datetime default null,
last_error varchar(250) not null default '',
last_modified varchar(250) not null default '',
favicon_avg_color varchar(11) default null,
@@ -283,7 +284,7 @@ create table ttrss_tags (id integer primary key auto_increment,
create table ttrss_version (schema_version int not null) ENGINE=InnoDB DEFAULT CHARSET=UTF8;
-insert into ttrss_version values (132);
+insert into ttrss_version values (133);
create table ttrss_enclosures (id integer primary key auto_increment,
content_url text not null,
diff --git a/schema/ttrss_schema_pgsql.sql b/schema/ttrss_schema_pgsql.sql
index 7870b4b37..9f3975353 100644
--- a/schema/ttrss_schema_pgsql.sql
+++ b/schema/ttrss_schema_pgsql.sql
@@ -72,6 +72,7 @@ create table ttrss_feeds (id serial not null primary key,
update_interval integer not null default 0,
purge_interval integer not null default 0,
last_updated timestamp default null,
+ last_unconditional timestamp default null,
last_error text not null default '',
last_modified text not null default '',
favicon_avg_color varchar(11) default null,
@@ -265,7 +266,7 @@ create index ttrss_tags_post_int_id_idx on ttrss_tags(post_int_id);
create table ttrss_version (schema_version int not null);
-insert into ttrss_version values (132);
+insert into ttrss_version values (133);
create table ttrss_enclosures (id serial not null primary key,
content_url text not null,
diff --git a/schema/versions/mysql/133.sql b/schema/versions/mysql/133.sql
new file mode 100644
index 000000000..e1693a9cb
--- /dev/null
+++ b/schema/versions/mysql/133.sql
@@ -0,0 +1,7 @@
+begin;
+
+alter table ttrss_feeds add column last_unconditional datetime null;
+
+UPDATE ttrss_version SET schema_version = 133;
+
+commit;
diff --git a/schema/versions/pgsql/133.sql b/schema/versions/pgsql/133.sql
new file mode 100644
index 000000000..7bf2f9fa6
--- /dev/null
+++ b/schema/versions/pgsql/133.sql
@@ -0,0 +1,7 @@
+begin;
+
+alter table ttrss_feeds add column last_unconditional timestamp null;
+
+UPDATE ttrss_version SET schema_version = 133;
+
+commit;
diff --git a/themes/default.php b/themes/default.php
index db131e34c..48ca80752 100644
--- a/themes/default.php
+++ b/themes/default.php
@@ -5,10 +5,6 @@
return "@import \"$filename?".filemtime($filename)."\";";
}
- $styles = [ "tt-rss.css", "dijit.css", "cdm.css", "prefs.css" ];
-
- foreach ($styles as $style) {
- print import_tag("../css/$style") . "\n";
- }
+ print import_tag("../css/default.css") . "\n";
?>