/* ==========================================================
   PS Community – Design Tokens
   Alle Farbwerte, Abstände und Radii zentral definiert,
   damit Profil- und Gruppen-Seite ein einheitliches
   Erscheinungsbild haben.
   ========================================================== */
:root {
    /* Primärfarbe */
    --cpc-primary:       #0073aa;
    --cpc-primary-dark:  #005177;
    --cpc-primary-light: #e5f3ff;

    /* Neutrale Farben */
    --cpc-text:          #333;
    --cpc-text-meta:     #666;
    --cpc-text-muted:    #999;
    --cpc-bg-subtle:     #f9f9f9;
    --cpc-bg-white:      #fff;

    /* Rahmen */
    --cpc-border:        #ddd;
    --cpc-border-light:  #e0e0e0;

    /* Ecken-Radii */
    --cpc-radius-sm:     4px;
    --cpc-radius-md:     6px;
    --cpc-radius-lg:     8px;

    /* Abstände */
    --cpc-space-xs:      5px;
    --cpc-space-sm:      10px;
    --cpc-space-md:      20px;
    --cpc-space-lg:      30px;

    /* Typografie */
    --cpc-font-sm:       12px;
    --cpc-font-md:       14px;
    --cpc-font-lg:       16px;

    /* Tab-Navigation */
    --cpc-tab-border-width:  2px;
    --cpc-tab-active-color:  var(--cpc-primary);
    --cpc-tab-hover-bg:      #f4f8fb;

    /* Buttons */
    --cpc-btn-padding:   10px 20px;
    --cpc-btn-radius:    var(--cpc-radius-sm);
}

/* ==========================================================
   PS Community – Gemeinsame Button-Basisklasse
   Wird von Profil- UND Gruppen-Modul genutzt.
   ========================================================== */
.cpc-button,
.cpc-btn {
    display:        inline-block;
    padding:        var(--cpc-btn-padding);
    background:     var(--cpc-primary);
    color:          #fff !important;
    text-decoration: none;
    border-radius:  var(--cpc-btn-radius);
    font-weight:    600;
    border:         none;
    cursor:         pointer;
    transition:     background 0.2s ease;
    line-height:    1.4;
}
.cpc-button:hover,
.cpc-btn:hover {
    background:     var(--cpc-primary-dark);
    color:          #fff !important;
    text-decoration: none;
}
.cpc-btn-danger { background: #dc3545; }
.cpc-btn-danger:hover { background: #c82333; }
.cpc-btn-secondary { background: #6c757d; }
.cpc-btn-secondary:hover { background: #5a6268; }
.cpc-btn-small { padding: 6px 12px; font-size: var(--cpc-font-sm); font-weight: 500; }

/* ==========================================================
   PS Community – Gemeinsame Tab-Navigation
   Einheitlicher Underline-Stil für Profil- und Gruppen-Tabs.
   ========================================================== */
.cpc-tabs-nav {
    margin:        20px 0 0 0;
    border-bottom: var(--cpc-tab-border-width) solid var(--cpc-border);
    clear:         both;
}

.cpc-tabs-list {
    list-style: none !important;
    margin:     0;
    padding:    0;
    display:    flex;
    flex-wrap:  wrap;
}

.cpc-tab-item {
    list-style: none !important;
    margin:     0 4px -var(--cpc-tab-border-width) 0;
}

.cpc-tab-link {
    display:        inline-block;
    padding:        12px 20px;
    text-decoration: none;
    color:          var(--cpc-text-meta);
    border-bottom:  3px solid transparent;
    transition:     all 0.2s ease;
    font-weight:    500;
    white-space:    nowrap;
}
.cpc-tab-link:hover {
    color:           var(--cpc-primary);
    text-decoration: none;
    background:      var(--cpc-tab-hover-bg);
}
.cpc-tab-item.active .cpc-tab-link,
.cpc-tab-link.active {
    color:            var(--cpc-primary);
    border-bottom-color: var(--cpc-primary);
}

.cpc-tab-content-wrapper {
    padding:    20px 0;
    min-height: 200px;
    animation:  cpc-fade-in 0.25s ease;
}

@keyframes cpc-fade-in {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Responsive: Tabs werden vertikal */
@media screen and (max-width: 768px) {
    .cpc-tabs-list   { flex-direction: column; }
    .cpc-tab-item    { margin: 0; border-bottom: 1px solid var(--cpc-border-light); }
    .cpc-tab-link    { display: block; padding: 15px; border-bottom: none; border-left: 3px solid transparent; }
    .cpc-tab-item.active .cpc-tab-link { border-left-color: var(--cpc-primary); border-bottom-color: transparent; background: #f7f7f7; }
}

@font-face
{
    font-family:'cpc_com';
    src:url('fonts/cpc_com.eot');
    src:url('fonts/cpc_com.eot?#iefix') format('embedded-opentype'),
        url('fonts/cpc_com.svg#cpc_com') format('svg'),
        url('fonts/cpc_com.woff') format('woff'),
        url('fonts/cpc_com.ttf') format('truetype');
    font-weight:normal;
    font-style:normal;

}


/* PS Community Overlay (please wait, etc...) */
.cpc_wait_modal {
    display:    none;
    position:   fixed;
    z-index:    1000;
    top:        0;
    left:       0;
    height:     100%;
    width:      100%;
    background: rgba( 255, 255, 255, .8 ) 
                url('images/wait.gif') 
                50% 50% 
                no-repeat;
    background-size: 20px 20px;
}

body.cpc_wait_loading .cpc_wait_modal {
    display: block;
}

/* Image view */
#cpc_activity_dialog img {
	-moz-box-shadow: 0 0 7px #000;
	-webkit-box-shadow: 0 0 7px #000;
	-o-box-shadow: 0 0 7px #000;
	-ms-box-shadow: 0 0 7px #000;
	box-shadow: 0 0 7px #000;
}
#cpc_activity_dialog_desc {
    position: absolute;
    top: 0;
    left: 0;
    background-color:rgba(0, 0, 0, 0.5);
    color: #fff;
    font-size: 1.2em;
    padding: 0 4px 0 4px;
    border-bottom-right-radius: 3px;
}

#cpc_activity_dialog_source {
    position: absolute;
    bottom: 0;
    right: 0;
    background-color:rgba(0, 0, 0, 0.5);
    color: #fff;
    font-size: 0.8em;
    padding: 0 4px 0 4px;
    border-top-left-radius: 3px;
}


/* Menu icon */
li.toplevel_page_cpc_com .dashicons-before:before {
	background-image: none !important;
	font-family: 'cpc_com';
	content: "\e600";	
}

/* Global Styles */

.cpc_account_closed {
	border-left: 10px solid #990;
	background: #f9f9f9;
	color: #000;
	padding: 10px;
}

.cpc_success {
	border-left: 10px solid #090;
	background: #f9f9f9;
	color: #000;
	padding: 10px;
	margin-bottom: 20px;
}

.cpc_error {
    border-left: 10px solid #900;
    background: #f9f9f9;
    color: #000;
    padding: 10px;
    margin-bottom: 20px;
}

.cpc_warning {
    border-left: 10px solid #f90;
    background: #f9f999;
    color: #000;
    padding: 10px;
    margin-bottom: 20px;
}

.cpc_code {
    font-size: 0.8em !important;
    padding: 5px !important;
    white-space: pre-wrap;
    white-space: -moz-pre-wrap;
    white-space: -pre-wrap;
    white-space: -o-pre-wrap;
    word-wrap: break-word;
}

.cpc_admin_tip {
    clear: both;
    margin-top: 10px;
	border-left: 10px solid #810081;
	background: #f9f9f9;
	color: #000;
	padding: 10px;
	margin-bottom: 20px;
}

.cpc_admin_tip_small {
    clear: both;
    margin-top: 5px;
	border-left: 5px solid #810081;
	background: #f9f9f9;
	color: #000;
	padding: 4px 4px 4px 8px;
	margin-bottom: 10px;
    font-size: 0.8em;
}

.cpc_field_error {
	border: 1px solid red !important;
	background-color: #faa !important;
	color: #000 !important;
}

.cpc_ago {
	font-size:0.8em;
}

.cpc_20px_gap {
    clear:both;
    margin-top:20px;
}

/* Admin */

#TB_window {
  max-width: 95vw !important;
  width: 95vw !important;
  height: auto !important;
  max-height: 90vh !important;
  top: 5vh !important;
  left: 2.5vw !important;
  margin-left: 0 !important;
  overflow: visible !important;
}

#TB_iframeContent {
  width: 100% !important;
  height: 80vh !important;
  min-height: 400px;
  max-height: 80vh !important;
  border: none !important;
}

#TB_ajaxContent {
    width: 100% !important;
    height: 95% !important;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */    
}

#cpc_admin_getting_started_options_outline {
    overflow:auto;
    width: 100%;
}

#cpc_admin_getting_started_options_left_and_middle {
    overflow: auto; 
    width:30%;
    float:left;
    margin-bottom:15px;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */        
}

#cpc_admin_getting_started_options_left {
    width: 48%;
    padding-right: 6px;
    float:left;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */    
}

#cpc_admin_getting_started_options_middle {
    width: 50%;
    padding-right: 6px;
    float: left;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */    
}

#cpc_admin_getting_started_options_right {
    float: left;
    padding: 0 6px 6px 6px;
    border-left: 1px solid #510051;
    width: 65%;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */    
}

.cpc_admin_getting_started_option_shortcode {
    display:none;
    padding: 6px;
    cursor: pointer;
}
.cpc_admin_getting_started_option_shortcode:after { 
    content: "\BB";
    float: right;
    color: #fff;
}
.cpc_admin_getting_started_option_shortcode:hover {
    background-color: #efefef;
    color: #510051;
    border-radius: 3px;
}

.cpc_admin_getting_started_option {
    padding: 6px;
    cursor: pointer;
}
.cpc_admin_getting_started_option:hover {
    background-color: #efefef;
    color: #510051;
    border-radius: 3px;
}
.cpc_admin_getting_started_option:after { 
    content: "\BB";
    float: right;
    color: #fff;
}

.cpc_admin_getting_started_active {
    border-radius: 3px;
    background-color: #510051 !important;
    color: #fff !important;
}
.cpc_admin_getting_started_active:after { 
    content: "\BB";
    float: right;
}

table.cpc_shortcode_value_row {
}
table.cpc_shortcode_value_row tr {
}
table.cpc_shortcode_value_row tr td {
    padding: 4px;
    line-height: 2.0em;
    border-top: 1px dotted #afafaf;
}
table.cpc_shortcode_value_row tr:hover:not(.cpc_desc):not(.cpc_section) {
    background-color: #efefef;
    color: #510051;
    cursor: default;
}

table.cpc_shortcode_value_row tr td:nth-child(3) {
    display:none;
}

/* Responsive videos */
.cpc_video_container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0; 
    overflow: hidden;
    margin-bottom:20px;
}
.cpc_video_container iframe,
.cpc_video_container object,
.cpc_video_container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/* =========================== BB Codes */

.cpc_bbcode_center {
    width: 100%;
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;         /* Opera/IE 8+ */   
    text-align: center;
    margin-top: -0.5em;
    margin-bottom: 0.5em;
}

.cpc_bbcode_list_item {
    margin-top: -0.6em !important;
    margin-bottom: -0.6em !important;
}

pre, .cpc_bbcode_code {
    background: #f9f9f9;
    color: #000;
    padding: 10px;
    font-family: courier;
    margin: 15px 0 15px 0;
    font-size: 0.8em;
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;         /* Opera/IE 8+ */   
}

.cpc_forum_post_comment_content pre {
    word-wrap: break-word;
    margin: 15px 25px 15px 15px;
}
.cpc_forum_post_comment_content blockquote, .cpc_bbcode_quote, .cpc_wp_editor_quote {
  background: #f9f9f9;
  border-left: 10px solid #ccc;
  padding: 15px 15px 15px 15px;
  margin: 15px 25px 15px 15px;
  quotes: "\201C" "\201D";
  -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box;    /* Firefox, other Gecko */
  box-sizing: border-box;         /* Opera/IE 8+ */	
} {
  background: #f9f9f9;
  border-left: 10px solid #ccc !important;
  padding: 15px 15px 15px 15px !important;
  font-size: 0.8em;
  margin: 15px 25px 15px 15px !important;
  quotes: "\201C" "\201D" !important;
  -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box;    /* Firefox, other Gecko */
  box-sizing: border-box;         /* Opera/IE 8+ */ 
}
.cpc_forum_post_comment_content blockquote:before, .cpc_bbcode_quote:before, .cpc_wp_editor_quote:before {
  color: #ccc;
  content: open-quote !important;
  font-size: 3em;
  line-height: 0.3em;
  vertical-align: -0.4em;
}
.cpc_forum_post_comment_content blockquote:after, .cpc_bbcode_quote:after, .cpc_wp_editor_quote:after {
  color: #ccc;
  content: close-quote !important;
  font-size: 3em;
  line-height: 0.3em;
  vertical-align: -0.4em;
}
.cpc_forum_post_comment_content blockquote p, .cpc_bbcode_quote p {
  display: inline;
}

/* Welcome */
#cpc_welcome {
    overflow: hidden;
}
#cpc_welcome a {
	color: #510051;
	font-weight: bold;
}
#cpc_welcome_bar {
    margin-top: 10px;
    background-color: #510051;
    padding: 20px 20px 10px 25px;
}
#cpc_welcome_bar img {
    border: 1px solid #fff;
    border-radius: 30px;
    margin-right: 30px;
}

.cpc_setup_video_div {
    width:30%; 
    min-width:324px; 
    margin-right:10px; 
    float: left;
    margin-bottom:10px;
}
.cpc_setup_video_iframe {
    border:2px solid #510051;
    max-width:320px;
    max-height:180px;
    -moz-box-shadow: 0 0 7px #999;
    -webkit-box-shadow: 0 0 7px #999;
    -o-box-shadow: 0 0 7px #999;
    -ms-box-shadow: 0 0 7px #999;
    box-shadow: 0 0 7px #999;
}

.tooltipsy
{
	padding: 4px;
	padding-top: 2px;
	padding-bottom: 2px;
	overflow: hidden;
	color: #000;
	font-size: 0.8em;
	background-color: #dfdfdf;
	border: 1px solid #cfcfcf;
}
