/* ================================================================
   RISS PLUGIN — FRONTEND STYLES
   Real IT Solution And Services
================================================================ */

:root {
  --riss-primary:    #1a56db;
  --riss-primary-dk: #1340a8;
  --riss-accent:     #f59e0b;
  --riss-success:    #10b981;
  --riss-warning:    #f59e0b;
  --riss-danger:     #ef4444;
  --riss-dark:       #1e293b;
  --riss-muted:      #64748b;
  --riss-light:      #f1f5f9;
  --riss-border:     #e2e8f0;
  --riss-white:      #ffffff;
  --riss-radius:     12px;
  --riss-shadow:     0 4px 20px rgba(0,0,0,.08);
  --riss-shadow-lg:  0 8px 40px rgba(0,0,0,.12);
}

/* ── UTILS ─────────────────────────────────────────────────── */
.riss-msg        { margin-top:10px; font-weight:500; }
.riss-msg.success{ color: var(--riss-success); }
.riss-msg.error  { color: var(--riss-danger); }
.riss-empty      { color: var(--riss-muted); font-style:italic; padding:20px 0; }
.riss-loading    { color: var(--riss-muted); padding:20px; text-align:center; }
.riss-login-notice{ background:var(--riss-light); padding:20px; border-radius:var(--riss-radius);
                    text-align:center; border-left:4px solid var(--riss-primary); }
.riss-login-notice a { color:var(--riss-primary); font-weight:600; }

/* ── BUTTONS ────────────────────────────────────────────────── */
.riss-btn {
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  padding:10px 20px; border-radius:8px; border:none; cursor:pointer;
  font-size:14px; font-weight:600; text-decoration:none;
  transition:all .2s ease; background:var(--riss-light); color:var(--riss-dark);
}
.riss-btn:hover          { transform:translateY(-1px); box-shadow:var(--riss-shadow); }
.riss-btn-primary        { background:var(--riss-primary); color:#fff; }
.riss-btn-primary:hover  { background:var(--riss-primary-dk); color:#fff; }
.riss-btn-sm             { padding:6px 14px; font-size:12px; }

/* ── SECTION HEADER ─────────────────────────────────────────── */
.riss-section-header     { text-align:center; margin-bottom:40px; }
.riss-section-header h2  { font-size:2rem; font-weight:700; color:var(--riss-dark); margin-bottom:8px; }
.riss-section-header p   { color:var(--riss-muted); font-size:1.05rem; }

/* ── SERVICES GRID ──────────────────────────────────────────── */
.riss-services-section   { padding:60px 0; }
.riss-services-grid      { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:24px; }
.riss-service-card {
  background:var(--riss-white); border-radius:var(--riss-radius);
  padding:28px 24px; box-shadow:var(--riss-shadow); border:1px solid var(--riss-border);
  display:flex; flex-direction:column; align-items:center; text-align:center; gap:10px;
  transition:transform .25s, box-shadow .25s;
}
.riss-service-card:hover { transform:translateY(-4px); box-shadow:var(--riss-shadow-lg); }
.riss-service-icon       { font-size:2.5rem; }
.riss-service-card h3    { font-size:1rem; font-weight:700; color:var(--riss-dark); margin:0; }
.riss-service-card p     { font-size:.875rem; color:var(--riss-muted); flex:1; }
.riss-service-price      { font-size:1.2rem; font-weight:700; color:var(--riss-primary); }

/* ── ABOUT SECTION ──────────────────────────────────────────── */
.riss-about-section      { padding:60px 0; }
.riss-about-content      { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.riss-about-text p       { color:var(--riss-dark); line-height:1.8; margin-bottom:16px; font-size:1rem; }
.riss-features-grid      { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:16px; }
.riss-feature-item {
  background:var(--riss-light); border-radius:var(--riss-radius);
  padding:20px; text-align:center;
}
.riss-feature-icon       { font-size:2rem; display:block; margin-bottom:8px; }
.riss-feature-item h4    { font-size:.9rem; font-weight:700; color:var(--riss-dark); margin:0 0 4px; }
.riss-feature-item p     { font-size:.8rem; color:var(--riss-muted); margin:0; }

/* ── CONTACT SECTION ────────────────────────────────────────── */
.riss-contact-section    { padding:60px 0; }
.riss-contact-grid       { display:grid; grid-template-columns:1fr 1.4fr; gap:48px; }
.riss-contact-item       { display:flex; align-items:center; gap:12px; margin-bottom:16px;
                            font-size:.95rem; color:var(--riss-dark); }
.riss-contact-item a     { color:var(--riss-primary); }
.riss-contact-item span  { font-size:1.4rem; }
.riss-social-links       { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.riss-social-btn         { padding:8px 16px; border-radius:6px; text-decoration:none;
                            font-size:.85rem; font-weight:600; color:#fff; transition:opacity .2s; }
.riss-social-btn:hover   { opacity:.85; color:#fff; }
.riss-wa                 { background:#25D366; }
.riss-ig                 { background:linear-gradient(135deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888); }
.riss-fb                 { background:#1877F2; }
.riss-tg                 { background:#229ED9; }
.riss-contact-form       { background:var(--riss-white); padding:32px; border-radius:var(--riss-radius);
                            box-shadow:var(--riss-shadow); }
.riss-contact-form h3    { margin-bottom:20px; color:var(--riss-dark); }
.riss-contact-form input,
.riss-contact-form select,
.riss-contact-form textarea {
  width:100%; padding:10px 14px; margin-bottom:14px; border-radius:8px;
  border:1px solid var(--riss-border); font-size:.95rem; box-sizing:border-box;
  font-family:inherit; transition:border-color .2s;
}
.riss-contact-form input:focus,
.riss-contact-form select:focus,
.riss-contact-form textarea:focus {
  outline:none; border-color:var(--riss-primary);
  box-shadow:0 0 0 3px rgba(26,86,219,.12);
}

/* ── DOWNLOADS SECTION ──────────────────────────────────────── */
.riss-downloads-section  { padding:60px 0; }
.riss-downloads-grid     { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:20px; }
.riss-download-card {
  background:var(--riss-white); border-radius:var(--riss-radius);
  padding:24px; box-shadow:var(--riss-shadow); text-align:center; gap:10px;
  display:flex; flex-direction:column; align-items:center;
}
.riss-dl-icon            { font-size:2rem; }
.riss-download-card h4   { font-weight:700; color:var(--riss-dark); margin:8px 0 4px; }
.riss-category-tag       { background:var(--riss-primary); color:#fff; padding:2px 10px;
                            border-radius:20px; font-size:.75rem; font-weight:600; }
.riss-download-card p    { font-size:.85rem; color:var(--riss-muted); flex:1; }

/* ── POLICY SECTIONS ────────────────────────────────────────── */
.riss-policy-section     { max-width:800px; margin:0 auto; padding:40px 20px; }
.riss-policy-section h2  { color:var(--riss-dark); border-bottom:2px solid var(--riss-primary);
                            padding-bottom:10px; margin-bottom:20px; }
.riss-policy-section h3  { color:var(--riss-primary); margin-top:28px; }
.riss-policy-section ul  { padding-left:20px; line-height:2; }

/* ── TABLE ──────────────────────────────────────────────────── */
.riss-table              { width:100%; border-collapse:collapse; font-size:.9rem; }
.riss-table th           { background:var(--riss-light); color:var(--riss-muted);
                            font-weight:600; padding:10px 12px; text-align:left; border-bottom:2px solid var(--riss-border); }
.riss-table td           { padding:10px 12px; border-bottom:1px solid var(--riss-border);
                            color:var(--riss-dark); vertical-align:middle; }
.riss-table tr:hover td  { background:rgba(26,86,219,.03); }

/* ── STATUS BADGES ──────────────────────────────────────────── */
.riss-badge              { padding:3px 10px; border-radius:20px; font-size:.75rem; font-weight:600; }
.riss-status-pending     { background:#fef3c7; color:#92400e; }
.riss-status-in_progress { background:#dbeafe; color:#1e40af; }
.riss-status-completed   { background:#d1fae5; color:#065f46; }
.riss-status-cancelled   { background:#fee2e2; color:#991b1b; }
.riss-status-verified    { background:#d1fae5; color:#065f46; }
.riss-status-rejected    { background:#fee2e2; color:#991b1b; }
.riss-status-global      { background:#dbeafe; color:#1e40af; }
.riss-status-personal    { background:#f0fdf4; color:#166534; }

/* ── MODAL ──────────────────────────────────────────────────── */
.riss-modal {
  position:fixed; inset:0; background:rgba(0,0,0,.5);
  z-index:99999; display:flex; align-items:center; justify-content:center;
}
.riss-modal-content {
  background:var(--riss-white); border-radius:var(--riss-radius);
  padding:32px; width:90%; max-width:480px; position:relative; box-shadow:var(--riss-shadow-lg);
}
.riss-modal-content h3   { margin-bottom:16px; color:var(--riss-dark); }
.riss-modal-content textarea {
  width:100%; padding:12px; border:1px solid var(--riss-border);
  border-radius:8px; font-family:inherit; font-size:.95rem; box-sizing:border-box; resize:vertical;
}
.riss-modal-close {
  position:absolute; top:12px; right:16px; background:none; border:none;
  font-size:1.5rem; cursor:pointer; color:var(--riss-muted); line-height:1;
}
.riss-modal-close:hover  { color:var(--riss-danger); }

/* ── USER DASHBOARD ─────────────────────────────────────────── */
.riss-user-dashboard     { max-width:1100px; margin:0 auto; padding:20px; }
.riss-dashboard-header {
  display:flex; align-items:center; gap:20px;
  background:linear-gradient(135deg,var(--riss-primary),var(--riss-primary-dk));
  color:#fff; padding:24px 28px; border-radius:var(--riss-radius); margin-bottom:24px;
}
.riss-user-avatar {
  width:60px; height:60px; border-radius:50%; background:rgba(255,255,255,.25);
  display:flex; align-items:center; justify-content:center;
  font-size:1.6rem; font-weight:700; flex-shrink:0;
}
.riss-dashboard-header h2 { margin:0 0 4px; font-size:1.5rem; }
.riss-dashboard-header p  { margin:0; opacity:.85; font-size:.9rem; }

/* ── NEWS SLIDER ────────────────────────────────────────────── */
.riss-news-slider-wrapper {
  background:var(--riss-dark); color:#fff; border-radius:8px;
  display:flex; align-items:center; overflow:hidden; margin-bottom:24px; min-height:40px;
}
.riss-news-slider-label  { background:var(--riss-primary); padding:8px 14px;
                            font-size:.8rem; font-weight:700; white-space:nowrap; flex-shrink:0; }
.riss-news-slider        { display:flex; overflow:hidden; flex:1; position:relative; height:40px; }
.riss-news-slide {
  display:flex; align-items:center; gap:12px; padding:0 20px;
  white-space:nowrap; position:absolute; animation:riss-ticker 20s linear infinite;
}
.riss-news-slide a       { color:#fff; text-decoration:none; font-size:.85rem; }
.riss-news-slide a:hover { color:var(--riss-accent); }
.riss-news-slide span    { color:var(--riss-accent); font-size:.75rem; }
@keyframes riss-ticker { 0%{left:100%;} 100%{left:-100%;} }

/* ── DASHBOARD STATS ─────────────────────────────────────────── */
.riss-dashboard-stats    { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:24px; }
.riss-dash-stat {
  background:var(--riss-white); border-radius:var(--riss-radius); padding:20px;
  text-align:center; box-shadow:var(--riss-shadow); border:1px solid var(--riss-border);
}
.riss-dash-stat strong   { display:block; font-size:2rem; font-weight:700; color:var(--riss-primary); }
.riss-dash-stat span     { font-size:.8rem; color:var(--riss-muted); }
.riss-has-notif strong   { color:var(--riss-danger); }

/* ── DASHBOARD TABS ──────────────────────────────────────────── */
.riss-dash-tabs          { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:24px; }
.riss-tab-btn {
  padding:9px 18px; border:1px solid var(--riss-border); border-radius:8px;
  background:var(--riss-white); cursor:pointer; font-size:.875rem; font-weight:600;
  color:var(--riss-muted); transition:all .2s;
}
.riss-tab-btn.active,
.riss-tab-btn:hover      { background:var(--riss-primary); color:#fff; border-color:var(--riss-primary); }
.riss-tab-content        { display:none; background:var(--riss-white); border-radius:var(--riss-radius);
                            padding:28px; box-shadow:var(--riss-shadow); }
.riss-tab-content.active { display:block; }
.riss-tab-content h3     { margin-top:0; color:var(--riss-dark); margin-bottom:20px; }

/* ── SERVICE REQUEST GRID IN DASHBOARD ──────────────────────── */
.riss-services-request-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:16px; }
.riss-service-req-card {
  background:var(--riss-light); border-radius:var(--riss-radius); padding:20px;
  text-align:center; border:1px solid var(--riss-border); transition:all .2s;
}
.riss-service-req-card:hover { border-color:var(--riss-primary); box-shadow:var(--riss-shadow); }
.riss-service-req-icon   { font-size:1.8rem; margin-bottom:8px; }
.riss-service-req-card h4 { font-size:.9rem; margin:0 0 4px; color:var(--riss-dark); }
.riss-service-req-card p  { font-size:.85rem; color:var(--riss-primary); font-weight:700; margin:0 0 12px; }

/* ── PARCEL CARDS ────────────────────────────────────────────── */
.riss-parcels-list       { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:16px; }
.riss-parcel-card {
  background:var(--riss-light); border-radius:var(--riss-radius); padding:20px;
  border:1px solid var(--riss-border);
}
.riss-parcel-header      { display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; }
.riss-parcel-tracking    { font-weight:700; color:var(--riss-dark); }
.riss-parcel-carrier     { background:var(--riss-primary); color:#fff; padding:3px 10px;
                            border-radius:20px; font-size:.75rem; font-weight:600; }
.riss-parcel-status      { font-size:1rem; font-weight:700; color:var(--riss-success); margin-bottom:6px; }
.riss-parcel-loc,
.riss-parcel-est         { font-size:.85rem; color:var(--riss-muted); margin-bottom:4px; }

/* ── NOTIFICATION ITEMS ──────────────────────────────────────── */
.riss-notif-item {
  display:flex; gap:14px; padding:14px; border-radius:8px;
  margin-bottom:10px; background:var(--riss-light); border:1px solid var(--riss-border);
  transition:background .2s;
}
.riss-notif-item.unread  { background:#eff6ff; border-color:#bfdbfe; }
.riss-notif-dot          { width:10px; height:10px; border-radius:50%; background:var(--riss-primary);
                            flex-shrink:0; margin-top:5px; }
.riss-notif-title        { font-weight:700; color:var(--riss-dark); margin-bottom:4px; font-size:.9rem; }
.riss-notif-msg          { font-size:.85rem; color:var(--riss-muted); margin-bottom:4px; }
.riss-notif-date         { font-size:.75rem; color:var(--riss-muted); }

/* ── UPLOAD SECTION ──────────────────────────────────────────── */
.riss-upload-section     { max-width:680px; margin:0 auto; padding:40px 20px; }
.riss-upload-form        { background:var(--riss-white); border-radius:var(--riss-radius);
                            padding:32px; box-shadow:var(--riss-shadow); margin-bottom:32px; }
.riss-upload-form select { width:100%; padding:10px 14px; border:1px solid var(--riss-border);
                            border-radius:8px; font-size:.95rem; margin-bottom:16px; }
.riss-upload-dropzone {
  border:2px dashed var(--riss-border); border-radius:var(--riss-radius);
  padding:40px; text-align:center; cursor:pointer; transition:all .2s;
  background:var(--riss-light); margin-bottom:16px;
}
.riss-upload-dropzone:hover,
.riss-upload-dropzone.drag-over { border-color:var(--riss-primary); background:#eff6ff; }
.riss-upload-icon        { font-size:3rem; margin-bottom:8px; }
.riss-upload-browse      { color:var(--riss-primary); cursor:pointer; font-weight:600; }
.riss-upload-hint        { font-size:.8rem; color:var(--riss-muted); margin-top:8px; }
.riss-progress-bar       { height:6px; background:var(--riss-border); border-radius:3px; overflow:hidden; margin-top:12px; }
.riss-progress-fill      { height:100%; background:var(--riss-primary); width:0; transition:width .3s; }
.riss-prev-uploads h3    { color:var(--riss-dark); margin-bottom:16px; }

/* ── RESPONSIVE ──────────────────────────────────────────────── */
@media (max-width: 768px) {
  .riss-about-content,
  .riss-contact-grid      { grid-template-columns:1fr; }
  .riss-dashboard-stats   { grid-template-columns:repeat(2,1fr); }
  .riss-features-grid     { grid-template-columns:1fr; }
  .riss-dash-tabs         { gap:6px; }
  .riss-tab-btn           { padding:7px 12px; font-size:.8rem; }
  .riss-dashboard-header  { flex-direction:column; text-align:center; }
  .riss-services-grid     { grid-template-columns:1fr 1fr; }
}
@media (max-width: 480px) {
  .riss-services-grid,
  .riss-services-request-grid { grid-template-columns:1fr; }
  .riss-dashboard-stats   { grid-template-columns:1fr 1fr; }
  .riss-section-header h2 { font-size:1.5rem; }
}
