@import url("/stylesheets/application.css");
@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&display=swap");

/* ==========================================================================
   SMTwin v3 — "Aurora Glass"
   Redmine 5.0.5 theme. Dark premium shell (aurora gradient + glassmorphism),
   light readable content card. Neon-cyan accents, blue→cyan gradient actions.
   The theme CSS replaces the default stylesheet, hence the core import above.
   ========================================================================== */

:root {
  /* Shell (dark) */
  --ag-void: #0a0f1e;
  --ag-void-2: #10162e;
  --ag-void-3: #1a1040;
  --ag-glass: rgba(13, 18, 38, .62);
  --ag-glass-strong: rgba(10, 15, 30, .78);
  --ag-glass-edge: rgba(255, 255, 255, .08);
  --ag-glass-edge-hi: rgba(255, 255, 255, .16);
  --ag-shell-text: #e2e8f0;
  --ag-shell-muted: rgba(226, 232, 240, .62);

  /* Accents */
  --ag-cyan: #22d3ee;
  --ag-cyan-deep: #06b6d4;
  --ag-blue: #2563eb;
  --ag-blue-deep: #1d4ed8;
  --ag-violet: #8b5cf6;
  --ag-grad: linear-gradient(135deg, #2563eb 0%, #0ea5e9 55%, #06b6d4 100%);
  --ag-focus: #0891b2;
  --ag-success: #047857;
  --ag-warning: #b45309;
  --ag-danger: #b91c1c;

  /* Content (light) */
  --ag-surface: #ffffff;
  --ag-surface-soft: #f8faff;
  --ag-surface-tint: #eef4ff;
  --ag-border: #dfe6f1;
  --ag-border-strong: #bac8dc;
  --ag-text: #0f172a;
  --ag-text-soft: #334155;
  --ag-muted: #64748b;

  /* Geometry & depth */
  --ag-radius: 14px;
  --ag-radius-sm: 9px;
  --ag-radius-lg: 20px;
  --ag-shadow-card: 0 1px 2px rgba(2, 6, 23, .18), 0 22px 58px rgba(2, 6, 23, .38);
  --ag-shadow-soft: 0 10px 30px rgba(15, 23, 42, .08);
  --ag-shadow-pop: 0 12px 40px rgba(2, 6, 23, .45);
  --ag-glow-cyan: 0 0 0 3px rgba(34, 211, 238, .18), 0 0 18px rgba(34, 211, 238, .28);

  --ag-font: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
             "Helvetica Neue", Arial, sans-serif;
  --ag-mono: ui-monospace, "SF Mono", "Cascadia Code", "JetBrains Mono",
             Consolas, "Liberation Mono", monospace;
}

/* --------------------------------------------------------------------------
   Motion primitives
   -------------------------------------------------------------------------- */

@keyframes ag-content-in {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes ag-pop-in {
  from { opacity: 0; transform: translateY(-4px) scale(.985); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}

/* --------------------------------------------------------------------------
   Base / page ground (dark aurora)
   -------------------------------------------------------------------------- */

html { background: var(--ag-void); }

body {
  font-family: var(--ag-font);
  font-size: 14px;
  line-height: 1.45;
  color: var(--ag-text);
  background:
    radial-gradient(1100px 620px at 12% -12%, rgba(59, 130, 246, .20), transparent 55%),
    radial-gradient(950px 560px at 88% -18%, rgba(139, 92, 246, .18), transparent 55%),
    radial-gradient(760px 460px at 55% 115%, rgba(6, 182, 212, .12), transparent 60%),
    linear-gradient(160deg, var(--ag-void) 0%, var(--ag-void-2) 52%, var(--ag-void-3) 100%);
  background-attachment: fixed;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

#wrapper { background: transparent; border: none; box-shadow: none; }
#main { background: transparent; }

a, a:link, a:visited {
  color: var(--ag-blue);
  text-decoration: none;
  transition: color .18s ease, background-color .18s ease, border-color .18s ease,
              box-shadow .18s ease;
}
a:hover, a:active { color: var(--ag-cyan-deep); text-decoration: underline; }

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible {
  outline: 3px solid var(--ag-focus);
  outline-offset: 2px;
}

a:focus-visible { border-radius: 4px; }

::selection { background: rgba(34, 211, 238, .35); color: #04121f; }

h1, h2, h3, h4 { font-family: var(--ag-font); }

#content h2 {
  font-size: 23px;
  font-weight: 700;
  letter-spacing: -0.015em;
  border: none;
  color: var(--ag-text);
  margin-bottom: 16px;
}
#content h3 { font-weight: 600; color: var(--ag-text); }
#content h4 { font-weight: 600; color: var(--ag-text-soft); }
#content h5, #content h6 { color: var(--ag-text-soft); }

/* --------------------------------------------------------------------------
   Top menu — thin glass strip
   -------------------------------------------------------------------------- */

#top-menu {
  background: var(--ag-glass-strong);
  -webkit-backdrop-filter: blur(14px) saturate(1.4);
  backdrop-filter: blur(14px) saturate(1.4);
  border-bottom: 1px solid var(--ag-glass-edge);
  font-size: 12px;
  padding: 7px 26px;
  height: auto;
}
#top-menu ul { margin: 0; }
#top-menu a, #top-menu #loggedas {
  color: var(--ag-shell-muted);
  font-weight: 500;
  letter-spacing: .015em;
  transition: color .18s ease;
}
#top-menu a:hover { color: #ffffff; text-decoration: none; }
#top-menu #account a { color: var(--ag-shell-muted); }
#top-menu #account a:hover { color: var(--ag-cyan); }

/* --------------------------------------------------------------------------
   Header — aurora gradient + glass, neon hairline underneath
   -------------------------------------------------------------------------- */

#header {
  background:
    radial-gradient(720px 320px at 14% -30%, rgba(37, 99, 235, .40), transparent 60%),
    radial-gradient(640px 300px at 55% -45%, rgba(139, 92, 246, .32), transparent 62%),
    radial-gradient(560px 300px at 92% -25%, rgba(34, 211, 238, .22), transparent 60%),
    linear-gradient(135deg, #0a0f1e 0%, #131a36 55%, #1a1040 100%);
  border-bottom: 1px solid rgba(34, 211, 238, .35);
  box-shadow: 0 1px 0 rgba(34, 211, 238, .12), 0 18px 50px rgba(2, 6, 23, .55);
  min-height: 0;
  padding: 20px 28px 64px 28px;
  position: relative;
}

#header h1 {
  color: #ffffff;
  font-size: 25px;
  font-weight: 800;
  letter-spacing: -0.02em;
  text-shadow: 0 0 28px rgba(34, 211, 238, .30);
}
#header h1 .breadcrumbs {
  color: var(--ag-shell-muted);
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  text-shadow: none;
}
#header h1 .breadcrumbs a { color: rgba(226, 232, 240, .85); }
#header h1 .breadcrumbs a:hover { color: var(--ag-cyan); text-decoration: none; }

/* Quick search — glass pill */
#quick-search { margin: 4px 0 0 0; }
#quick-search form label, #quick-search label {
  color: var(--ag-shell-muted);
  font-size: 12px;
}
#quick-search #q, #quick-search input[type="text"] {
  background: rgba(255, 255, 255, .14);
  -webkit-backdrop-filter: blur(14px) saturate(1.4);
  backdrop-filter: blur(14px) saturate(1.4);
  border: 1px solid rgba(255, 255, 255, .32);
  border-radius: 999px;
  color: #ffffff;
  padding: 7px 16px;
  width: 210px;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease,
              width .25s ease;
}
#quick-search #q:focus, #quick-search input[type="text"]:focus {
  background: rgba(255, 255, 255, .19);
  border-color: var(--ag-cyan);
  box-shadow: var(--ag-glow-cyan);
  outline: none;
  width: 250px;
}
#quick-search #q::placeholder { color: rgba(226, 232, 240, .70); }

/* Project jump — glass pill trigger */
#header #project-jump .drdn-trigger {
  background: rgba(255, 255, 255, .08);
  -webkit-backdrop-filter: blur(14px) saturate(1.4);
  backdrop-filter: blur(14px) saturate(1.4);
  border: 1px solid var(--ag-glass-edge-hi);
  border-radius: 999px;
  color: #ffffff;
  padding: 6px 16px;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease;
}
#header #project-jump .drdn-trigger:hover,
#header #project-jump.expanded .drdn-trigger {
  background: rgba(255, 255, 255, .14);
  border-color: rgba(34, 211, 238, .55);
  box-shadow: 0 0 14px rgba(34, 211, 238, .22);
}

/* Dropdown panel — dark glass (belongs to the shell) */
.drdn-content {
  background: rgba(14, 19, 40, .88);
  -webkit-backdrop-filter: blur(18px) saturate(1.5);
  backdrop-filter: blur(18px) saturate(1.5);
  border: 1px solid var(--ag-glass-edge-hi);
  border-radius: 12px;
  box-shadow: var(--ag-shadow-pop), inset 0 1px 0 rgba(255, 255, 255, .08);
  overflow: hidden;
  animation: ag-pop-in .18s ease both;
}
.drdn-content .quick-search {
  background: transparent;
  border-bottom: 1px solid var(--ag-glass-edge);
  padding: 8px;
}
.drdn-content input[type="text"], .drdn-content .autocomplete {
  background: rgba(255, 255, 255, .08);
  border: 1px solid var(--ag-glass-edge-hi);
  border-radius: 8px;
  color: #ffffff;
  padding: 6px 10px;
}
.drdn-content input[type="text"]:focus {
  border-color: var(--ag-cyan);
  box-shadow: var(--ag-glow-cyan);
  outline: none;
}
.drdn-items { background: transparent; }
.drdn-items a, .drdn-items a:link, .drdn-items a:visited {
  color: var(--ag-shell-text);
  padding: 8px 14px;
  border-radius: 0;
  transition: background .15s ease, color .15s ease, padding-left .15s ease;
}
.drdn-items a:hover, .drdn-items a.selected {
  background: linear-gradient(90deg, rgba(34, 211, 238, .16), rgba(37, 99, 235, .12));
  color: #ffffff;
  text-decoration: none;
}
.drdn-items a.selected { box-shadow: inset 2px 0 0 var(--ag-cyan); }
.drdn-items.projects a.all-projects { border-top: 1px solid var(--ag-glass-edge); }

/* --------------------------------------------------------------------------
   Main menu — pill tabs riding the header's lower edge
   -------------------------------------------------------------------------- */

#main-menu { left: 20px; bottom: 12px; }

#main-menu ul li a {
  background: transparent;
  border: 1px solid transparent;
  color: rgba(226, 232, 240, .85);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .01em;
  padding: 7px 15px;
  margin-right: 5px;
  border-radius: 999px;
  transition: background .18s ease, color .18s ease, border-color .18s ease,
              box-shadow .18s ease, transform .18s ease;
}
#main-menu ul li a:hover {
  background: rgba(255, 255, 255, .10);
  border-color: var(--ag-glass-edge-hi);
  color: #ffffff;
  text-decoration: none;
  transform: translateY(-1px);
}
#main-menu ul li a.selected,
#main-menu ul li a.selected:hover {
  background: var(--ag-grad);
  border-color: rgba(34, 211, 238, .55);
  color: #ffffff;
  font-weight: 600;
  box-shadow: 0 0 16px rgba(34, 211, 238, .35), 0 4px 14px rgba(2, 6, 23, .45);
  transform: none;
}

/* --------------------------------------------------------------------------
   Layout — luminous light card floating on the aurora
   -------------------------------------------------------------------------- */

#content, #sidebar { box-sizing: border-box; }

#content {
  background: var(--ag-surface);
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: var(--ag-radius);
  box-shadow: var(--ag-shadow-card), inset 0 1px 0 rgba(255, 255, 255, .9);
  margin: 18px 0 18px 18px;
  min-width: 0;
  padding: 24px 28px;
  position: relative;
  width: calc(75% - 18px);
  animation: ag-content-in .3s cubic-bezier(.22, .7, .3, 1) both;
}

#main.nosidebar #content { width: auto; margin-right: 18px; }

/* Sidebar lives on the dark ground — light typography */
#sidebar {
  background: transparent;
  border-left: none; /* kill the default #ddd divider hanging next to the card */
  padding: 30px 20px 18px 24px;
}
#sidebar h3 {
  color: var(--ag-cyan);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  margin: 22px 0 8px 0;
}
#sidebar h4 { color: var(--ag-shell-text); border: none; }
#sidebar, #sidebar p, #sidebar span { color: var(--ag-shell-muted); }
#sidebar ul li { margin: 4px 0; }
#sidebar a, #sidebar a:link, #sidebar a:visited { color: rgba(226, 232, 240, .82); }
#sidebar a:hover { color: var(--ag-cyan); text-decoration: none; }
#sidebar a.selected {
  color: #ffffff;
  font-weight: 600;
  text-shadow: 0 0 12px rgba(34, 211, 238, .45);
}
#sidebar input[type="text"], #sidebar select {
  background: rgba(255, 255, 255, .08);
  border: 1px solid var(--ag-glass-edge-hi);
  border-radius: var(--ag-radius-sm);
  color: #ffffff;
}
#sidebar label, #flyout-menu label, .flyout-menu label { color: var(--ag-shell-text); }
#sidebar fieldset legend { color: var(--ag-shell-muted); }

#sidebar .contextual a.icon {
  background-color: rgba(255, 255, 255, .08);
  border-color: var(--ag-glass-edge-hi);
  color: var(--ag-shell-text);
}
#sidebar .contextual a.icon:hover {
  background-color: rgba(255, 255, 255, .13);
  border-color: rgba(34, 211, 238, .45);
  color: #ffffff;
}

#footer {
  background: transparent;
  border: none;
  color: rgba(226, 232, 240, .62);
  font-size: 12px;
  padding: 14px 0 26px 0;
}
#footer a, #footer a:link, #footer a:visited { color: rgba(226, 232, 240, .85); }
#footer a:hover { color: var(--ag-cyan); text-decoration: underline; }

/* --------------------------------------------------------------------------
   Contextual action buttons (inside the light card)
   -------------------------------------------------------------------------- */

.contextual a.icon {
  background-color: var(--ag-surface);
  background-position: 8px 50%;
  border: 1px solid var(--ag-border);
  border-radius: 999px;
  padding: 5px 13px 5px 28px;
  margin-left: 6px;
  color: var(--ag-text-soft);
  font-size: 12.5px;
  font-weight: 500;
  transition: border-color .18s ease, box-shadow .18s ease, color .18s ease,
              transform .18s ease;
}
.contextual a.icon:hover {
  border-color: var(--ag-cyan-deep);
  color: var(--ag-blue-deep);
  text-decoration: none;
  box-shadow: 0 2px 10px rgba(6, 182, 212, .25);
  transform: translateY(-1px);
}

/* --------------------------------------------------------------------------
   Forms (light context)
   -------------------------------------------------------------------------- */

input[type="text"], input[type="password"], input[type="email"],
input[type="url"], input[type="number"], input[type="date"],
input[type="datetime-local"], input[type="search"], select, textarea {
  background-color: var(--ag-surface);
  border: 1px solid var(--ag-border-strong);
  border-radius: var(--ag-radius-sm);
  color: var(--ag-text);
  font-family: inherit;
  font-size: 13px;
  padding: 6px 10px;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
input[type="text"]:hover, input[type="password"]:hover,
input[type="email"]:hover, input[type="url"]:hover,
input[type="number"]:hover, input[type="date"]:hover,
input[type="datetime-local"]:hover, input[type="search"]:hover,
select:hover, textarea:hover {
  border-color: #94a8c3;
}
input[type="text"]:focus, input[type="password"]:focus,
input[type="email"]:focus, input[type="url"]:focus,
input[type="number"]:focus, input[type="date"]:focus,
input[type="datetime-local"]:focus, input[type="search"]:focus,
select:focus, textarea:focus {
  border-color: var(--ag-cyan);
  box-shadow: var(--ag-glow-cyan);
  outline: 2px solid var(--ag-focus);
  outline-offset: 1px;
}

/* Selects — let text breathe (default Redmine height clips descenders)
   and show an explicit chevron so they read as dropdowns. */
select {
  height: auto;
  min-height: 30px;
  line-height: 1.4;
  padding-top: 4px;
  padding-bottom: 4px;
}
select:not([multiple]) {
  -webkit-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2364748b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  padding-right: 26px;
}
select[multiple] { padding-right: 10px; }
/* Sidebar select: its background shorthand resets the image — re-add a light chevron */
#sidebar select:not([multiple]) {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2394a3b8' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
}

input[type="checkbox"], input[type="radio"] { accent-color: var(--ag-cyan); }

input::placeholder, textarea::placeholder { color: #7b8ca5; opacity: 1; }

input[type="submit"], button[type="submit"], input[type="button"] {
  background: var(--ag-grad);
  border: 1px solid rgba(6, 182, 212, .6);
  border-radius: 999px;
  color: #ffffff;
  cursor: pointer;
  font-family: inherit;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .01em;
  padding: 8px 18px;
  box-shadow: 0 2px 10px rgba(37, 99, 235, .30);
  transition: box-shadow .2s ease, transform .15s ease, filter .2s ease;
}
input[type="submit"]:not(:disabled):not(.disabled):hover,
button[type="submit"]:not(:disabled):not(.disabled):hover,
input[type="button"]:not(:disabled):not(.disabled):hover {
  box-shadow: 0 0 18px rgba(34, 211, 238, .45), 0 6px 18px rgba(37, 99, 235, .35);
  filter: brightness(1.06);
  transform: translateY(-1px);
}
input[type="submit"]:active, button[type="submit"]:active {
  transform: translateY(0);
  box-shadow: 0 1px 6px rgba(37, 99, 235, .35);
}

button:not([type="submit"]):not(.tab-left):not(.tab-right):not(.ui-button) {
  border: 1px solid var(--ag-border-strong);
  border-radius: 999px;
  font-family: inherit;
  font-weight: 600;
  padding: 7px 14px;
  transition: background-color .18s ease, border-color .18s ease,
              box-shadow .18s ease, color .18s ease, transform .15s ease;
}
button:not([type="submit"]):not(.tab-left):not(.tab-right):not(.ui-button):not(:disabled):not(.disabled) {
  cursor: pointer;
}
button:not([type="submit"]):not(.tab-left):not(.tab-right):not(.ui-button):not(:disabled):not(.disabled):hover {
  border-color: var(--ag-cyan-deep);
  box-shadow: 0 4px 14px rgba(15, 23, 42, .10);
  transform: translateY(-1px);
}

input:disabled, select:disabled, textarea:disabled, button:disabled,
input.disabled, select.disabled, textarea.disabled, button.disabled {
  cursor: not-allowed;
  filter: none;
  opacity: .56;
  transform: none !important;
}

#content label, .ui-dialog label, div.modal label {
  color: var(--ag-text-soft);
  font-weight: 500;
}
#content .tabular label.error,
.ui-dialog label.error,
div.modal label.error {
  color: var(--ag-danger);
}
.tabular p { margin-bottom: 10px; }
p.buttons { margin-top: 14px; }

div.box, .box {
  background: var(--ag-surface-soft);
  border: 1px solid var(--ag-border);
  border-radius: var(--ag-radius);
  padding: 16px 18px;
  box-shadow: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}
div.box:hover {
  border-color: var(--ag-border-strong);
  box-shadow: 0 6px 20px rgba(15, 23, 42, .07);
}
div.box h3 { color: var(--ag-text); }

#content .box.tabular.settings {
  background:
    linear-gradient(135deg, rgba(37, 99, 235, .035), transparent 34%),
    var(--ag-surface-soft);
  padding: 20px 22px;
}
#content .tabular.settings > p {
  border-bottom: 1px solid rgba(199, 210, 228, .55);
  margin: 0;
  padding-bottom: 10px;
  padding-top: 10px;
}
#content .tabular.settings > p:last-child { border-bottom: none; }
#content em.info {
  color: var(--ag-muted);
  line-height: 1.55;
}

fieldset {
  border: 1px solid var(--ag-border);
  border-radius: var(--ag-radius-sm);
}
fieldset legend { color: var(--ag-muted); font-weight: 600; }
fieldset#filters, fieldset#options {
  background: var(--ag-surface-soft);
  padding: 10px 14px;
}
fieldset#filters table { border-collapse: separate; }

/* --------------------------------------------------------------------------
   Tables / lists
   -------------------------------------------------------------------------- */

table.list, .table-list {
  border: 1px solid var(--ag-border);
  border-radius: 12px;
  border-spacing: 0;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
  overflow: hidden;
  width: 100%;
}
table.list thead th, .table-list-header {
  background: linear-gradient(180deg, #f2f5fc 0%, #eaeffa 100%);
  border-bottom: 1px solid var(--ag-border);
  color: #475569;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: 10px 10px;
}
table.list thead th a { color: #475569; }
table.list thead th a:hover { color: var(--ag-blue); text-decoration: none; }
table.list td {
  border-color: #edf1f8;
  padding: 8px 10px;
  transition: background .15s ease;
}
table.list tbody tr.odd { background: var(--ag-surface); }
table.list tbody tr.even { background: #fafcff; }
table.list tbody tr:hover { background: var(--ag-surface-tint); }
table.list tbody tr.group td {
  background: #e9eefb;
  border-bottom: 1px solid #dbe4f6;
  color: var(--ag-text);
  font-weight: 600;
  padding: 8px 10px;
}
table.list tbody tr.group a { color: var(--ag-blue-deep); }
tr.issue td.subject a { font-weight: 500; }

table.list tr.context-menu-selection,
table.list tr.context-menu-selection:hover {
  background: #d6f4fc !important;
  box-shadow: inset 2px 0 0 var(--ag-cyan);
}

.query-totals { color: var(--ag-muted); font-size: 12.5px; }

.nodata, p.nodata {
  background:
    radial-gradient(400px 120px at 50% 0%, rgba(37, 99, 235, .05), transparent 70%),
    var(--ag-surface-soft);
  border: 1px dashed var(--ag-border-strong);
  border-radius: var(--ag-radius);
  color: var(--ag-muted);
  padding: 26px;
  text-align: center;
}

/* --------------------------------------------------------------------------
   Pagination
   -------------------------------------------------------------------------- */

span.pagination { color: var(--ag-muted); font-size: 12.5px; }
.pagination .pages li a,
.pagination .pages li span {
  border-radius: 999px;
  padding: 4px 11px;
  transition: background .18s ease, color .18s ease, box-shadow .18s ease;
}
.pagination .pages li.current,
.pagination .pages li.current span {
  background: var(--ag-grad);
  border-radius: 999px;
  color: #ffffff;
  font-weight: 600;
  box-shadow: 0 2px 10px rgba(37, 99, 235, .35);
}
.pagination .pages li.page a:hover {
  background: var(--ag-surface-tint);
  color: var(--ag-blue-deep);
  text-decoration: none;
}
.pagination .per-page a.selected { color: var(--ag-blue-deep); font-weight: 700; }

/* --------------------------------------------------------------------------
   Tabs
   -------------------------------------------------------------------------- */

#content .tabs {
  height: 42px;
  margin-bottom: 18px;
}
#content .tabs ul { border-bottom: 1px solid var(--ag-border); }
#content .tabs ul li a {
  background: transparent;
  border: none;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  color: var(--ag-muted);
  font-weight: 500;
  padding: 8px 14px;
  transition: color .18s ease, border-color .18s ease;
}
#content .tabs ul li a:hover {
  color: var(--ag-text);
  text-decoration: none;
  border-bottom-color: var(--ag-border-strong);
}
#content .tabs ul li a.selected,
#content .tabs ul li a.selected:hover {
  background: transparent;
  border-bottom: 2px solid var(--ag-cyan-deep);
  color: var(--ag-blue-deep);
  font-weight: 600;
  box-shadow: 0 10px 16px -12px rgba(34, 211, 238, .65);
}
#content .tabs-buttons {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0), var(--ag-surface) 24%);
  border: none;
  height: 40px;
  width: 66px;
}
#content button.tab-left, #content button.tab-right {
  background-color: var(--ag-surface);
  border-color: var(--ag-border);
  border-radius: 8px;
  bottom: 4px;
  height: 30px;
  width: 30px;
}
#content button.tab-left:not(:disabled):not(.disabled):hover,
#content button.tab-right:not(:disabled):not(.disabled):hover {
  background-color: var(--ag-surface-tint);
  border-color: var(--ag-cyan-deep);
}

/* --------------------------------------------------------------------------
   Flash messages
   -------------------------------------------------------------------------- */

div.flash, #errorExplanation {
  border-radius: 12px;
  border-width: 1px;
  border-style: solid;
  padding: 12px 16px 12px 40px;
  background-position: 12px 50%;
  animation: ag-content-in .28s ease both;
}
div.flash.notice {
  background-color: #ecfdf7;
  border-color: #a7f3d0;
  color: #065f46;
}
div.flash.error, #errorExplanation {
  background-color: #fef2f2;
  border-color: #fecaca;
  color: #991b1b;
}
div.flash.warning {
  background-color: #fffbeb;
  border-color: #fde68a;
  color: #92400e;
}
.warning, .conflict {
  background-color: #fffbeb;
  border-color: #fde68a;
  color: #92400e;
}
.conflict { text-align: left; }

/* --------------------------------------------------------------------------
   Issue detail + journals
   -------------------------------------------------------------------------- */

div.issue {
  background:
    radial-gradient(560px 160px at 0% 0%, rgba(37, 99, 235, .06), transparent 65%),
    var(--ag-surface-soft);
  border: 1px solid var(--ag-border);
  border-radius: var(--ag-radius);
  padding: 18px 22px;
}
div.issue .subject h3 { font-size: 18px; font-weight: 700; }
div.issue .author { color: var(--ag-muted); }
div.issue .attributes .attribute .label { color: var(--ag-muted); }
div.issue .next-prev-links { color: var(--ag-muted); }

#history .journal, .journal {
  background: transparent;
  border-top: 1px solid var(--ag-border);
  padding-top: 12px;
}
.journal h4, #history h4 {
  color: var(--ag-muted);
  font-size: 12.5px;
  font-weight: 500;
}
.journal-link { color: var(--ag-muted); }
div.journal.private-notes { border-left: 3px solid #f59e0b; padding-left: 12px; }

/* --------------------------------------------------------------------------
   Progress bars & badges
   -------------------------------------------------------------------------- */

table.progress {
  border-radius: 999px;
  height: 8px;
  overflow: hidden;
  background: #e6ebf5;
}
table.progress td { height: 8px; }
table.progress td.closed { background: var(--ag-grad); }
table.progress td.done { background: #93c5fd; }
table.progress td.todo { background: #e6ebf5; }
p.percent { color: var(--ag-muted); font-size: 11px; }

.badge {
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 9px;
}

/* --------------------------------------------------------------------------
   Wiki / long-form typography
   -------------------------------------------------------------------------- */

div.wiki { line-height: 1.7; color: var(--ag-text-soft); }
div.wiki h1, div.wiki h2, div.wiki h3 {
  color: var(--ag-text);
  border-bottom: 1px solid var(--ag-border);
  padding-bottom: 4px;
}
div.wiki pre {
  background: #0d1226;
  border: 1px solid rgba(34, 211, 238, .22);
  border-radius: 12px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
  color: #dbe7ff;
  font-family: var(--ag-mono);
  font-size: 12.5px;
  line-height: 1.6;
  padding: 14px 18px;
  overflow-x: auto;
}
div.wiki code, .wiki code {
  background: var(--ag-surface-tint);
  border-radius: 5px;
  color: #1e40af;
  font-family: var(--ag-mono);
  font-size: 12.5px;
  padding: 1px 6px;
}
div.wiki pre code { background: transparent; color: inherit; padding: 0; }
div.wiki blockquote {
  border-left: 3px solid var(--ag-cyan-deep);
  color: var(--ag-muted);
  padding-left: 14px;
  margin-left: 0;
}
div.wiki table { border-collapse: collapse; }
div.wiki table td, div.wiki table th {
  border: 1px solid var(--ag-border);
  padding: 6px 10px;
}
div.wiki table th { background: var(--ag-surface-soft); }
div.wiki img { max-width: 100%; border-radius: 8px; }

/* --------------------------------------------------------------------------
   My page / admin
   -------------------------------------------------------------------------- */

.mypage-box {
  background: var(--ag-surface);
  border: 1px solid var(--ag-border);
  border-radius: var(--ag-radius);
  box-shadow: 0 1px 3px rgba(15, 23, 42, .06);
  padding: 16px 18px;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.mypage-box:hover {
  border-color: rgba(6, 182, 212, .45);
  box-shadow: 0 8px 26px rgba(15, 23, 42, .10);
  transform: translateY(-2px);
}

/* The same admin menu is rendered on two different surfaces in Redmine 5:
   inside the dark sidebar on sub-pages and inside #content on /admin. */
#sidebar #admin-menu ul li { margin-bottom: 4px; }
#sidebar #admin-menu a,
#sidebar #admin-menu a:link,
#sidebar #admin-menu a:visited {
  border-radius: var(--ag-radius-sm);
  color: rgba(226, 232, 240, .82);
  padding-top: 5px;
  padding-bottom: 5px;
  transition: background .18s ease, color .18s ease;
}
#sidebar #admin-menu a:hover {
  background: rgba(255, 255, 255, .08);
  color: #ffffff;
  text-decoration: none;
}
#sidebar #admin-menu a.selected,
#sidebar #admin-menu a.selected:hover {
  background-color: rgba(37, 99, 235, .16);
  color: #ffffff;
  box-shadow: inset 2px 0 0 var(--ag-cyan);
}

/* Administration home — operational card grid on the light content surface. */
#admin-index { margin-top: 2px; }
#admin-index #admin-menu > ul {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(225px, 1fr));
  margin: 0;
  padding: 0;
}
#admin-index #admin-menu li {
  list-style: none;
  margin: 0;
  min-width: 0;
  padding: 0;
}
#admin-index #admin-menu a,
#admin-index #admin-menu a:link,
#admin-index #admin-menu a:visited {
  align-items: center;
  background-color: var(--ag-surface-soft);
  background-position: 16px 50%;
  border: 1px solid var(--ag-border);
  border-radius: 12px;
  box-sizing: border-box;
  color: var(--ag-text-soft);
  display: flex;
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.35;
  min-height: 58px;
  padding: 12px 38px 12px 46px;
  position: relative;
  transition: background-color .18s ease, border-color .18s ease,
              box-shadow .18s ease, color .18s ease, transform .18s ease;
}
#admin-index #admin-menu a::after {
  color: var(--ag-muted);
  content: "\203A";
  font-size: 22px;
  font-weight: 400;
  line-height: 1;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-52%);
  transition: color .18s ease, transform .18s ease;
}
#admin-index #admin-menu a:hover {
  background-color: var(--ag-surface);
  border-color: rgba(6, 182, 212, .55);
  box-shadow: var(--ag-shadow-soft);
  color: var(--ag-blue-deep);
  text-decoration: none;
  transform: translateY(-2px);
}
#admin-index #admin-menu a:hover::after {
  color: var(--ag-cyan-deep);
  transform: translate(2px, -52%);
}
#admin-index #admin-menu a.selected,
#admin-index #admin-menu a.selected:hover {
  background-color: var(--ag-surface-tint);
  border-color: rgba(37, 99, 235, .35);
  box-shadow: inset 3px 0 0 var(--ag-blue);
  color: var(--ag-blue-deep);
}

#admin-index .box, table.list.plugins td { color: var(--ag-text-soft); }
table.list.plugins .name > .name {
  color: var(--ag-text);
  font-weight: 700;
}
table.list.plugins .description,
table.list.plugins .url {
  color: var(--ag-muted);
  line-height: 1.5;
}

/* --------------------------------------------------------------------------
   Context menu (floats over light content — bright glass)
   -------------------------------------------------------------------------- */

#context-menu {
  background: rgba(255, 255, 255, .88);
  -webkit-backdrop-filter: blur(16px) saturate(1.4);
  backdrop-filter: blur(16px) saturate(1.4);
  border: 1px solid rgba(148, 163, 184, .35);
  border-radius: 12px;
  box-shadow: var(--ag-shadow-pop);
  overflow: hidden;
  animation: ag-pop-in .16s ease both;
}
#context-menu ul { border: none; background: transparent; }
#context-menu li a { transition: background .15s ease, color .15s ease; }
#context-menu li a:hover {
  background-color: var(--ag-surface-tint);
  color: var(--ag-blue-deep);
  border-color: transparent;
}
#context-menu li.folder > ul {
  background: rgba(255, 255, 255, .94);
  border: 1px solid rgba(148, 163, 184, .35);
  border-radius: 10px;
  box-shadow: var(--ag-shadow-pop);
}

/* jQuery-UI dialogs */
.ui-dialog {
  background: var(--ag-surface) !important;
  border: 1px solid var(--ag-border) !important;
  border-radius: var(--ag-radius) !important;
  color: var(--ag-text-soft) !important;
  box-shadow: var(--ag-shadow-pop) !important;
}
.ui-dialog .ui-dialog-titlebar {
  background: var(--ag-surface-soft);
  border: none;
  border-bottom: 1px solid var(--ag-border);
  border-radius: var(--ag-radius) var(--ag-radius) 0 0;
  color: var(--ag-text);
}
.ui-dialog .ui-widget-content {
  background: var(--ag-surface);
  color: var(--ag-text-soft);
}

.ui-autocomplete,
.ui-menu {
  background: rgba(255, 255, 255, .97);
  border: 1px solid var(--ag-border);
  border-radius: 10px;
  box-shadow: var(--ag-shadow-pop);
  color: var(--ag-text-soft);
  padding: 5px;
}
.ui-autocomplete { overflow: hidden; }
.ui-menu .ui-menu-item-wrapper {
  border: none;
  border-radius: 7px;
  color: var(--ag-text-soft);
  padding: 7px 10px;
}
.ui-menu .ui-menu-item-wrapper.ui-state-active,
.ui-menu .ui-state-active {
  background: var(--ag-surface-tint);
  border: none;
  color: var(--ag-blue-deep);
  margin: 0;
}

div.modal {
  background: var(--ag-surface);
  border: 1px solid var(--ag-border);
  border-radius: var(--ag-radius);
  color: var(--ag-text-soft);
  box-shadow: var(--ag-shadow-pop);
  padding: 12px;
}

.controller-admin.action-info #content .box pre {
  background: #0d1226;
  border: 1px solid rgba(34, 211, 238, .22);
  border-radius: 10px;
  color: #dbe7ff;
  line-height: 1.6;
  margin: 0;
  padding: 14px 16px;
}

#ajax-indicator {
  background-color: rgba(255, 255, 255, .92);
  border: 1px solid var(--ag-border);
  border-radius: var(--ag-radius-sm);
  box-shadow: var(--ag-shadow-pop);
  opacity: 1;
}

/* --------------------------------------------------------------------------
   Login — floating glass panel on the aurora
   -------------------------------------------------------------------------- */

body.action-login #content {
  background: transparent;
  border: none;
  box-shadow: none;
  animation: none;
}

#login-form {
  background: rgba(15, 20, 42, .55);
  -webkit-backdrop-filter: blur(18px) saturate(1.5);
  backdrop-filter: blur(18px) saturate(1.5);
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 22px;
  box-shadow: 0 30px 80px rgba(2, 6, 23, .60), inset 0 1px 0 rgba(255, 255, 255, .10);
  margin: 9vh auto 0 auto;
  max-width: 400px;
  padding: 40px 40px 32px 40px;
  animation: ag-content-in .35s cubic-bezier(.22, .7, .3, 1) both;
}
#login-form table { width: 100%; }
#login-form label, #login-form td { color: #cbd5e1; font-weight: 500; }
#login-form a, #login-form a:link, #login-form a:visited { color: #67e8f9; }
#login-form a:hover { color: #a5f3fc; }
#login-form input[type="text"], #login-form input[type="password"] {
  background: rgba(255, 255, 255, .07);
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 10px;
  box-sizing: border-box;
  color: #f1f5f9;
  padding: 10px 13px;
  width: 100%;
}
#login-form input[type="text"]:focus, #login-form input[type="password"]:focus {
  background: rgba(255, 255, 255, .11);
  border-color: var(--ag-cyan);
  box-shadow: var(--ag-glow-cyan);
}
#login-form input[type="submit"], #login-submit {
  width: 100%;
  padding: 11px 16px;
  margin-top: 10px;
  border-radius: 12px;
}

/* --------------------------------------------------------------------------
   Misc
   -------------------------------------------------------------------------- */

hr { border: none; border-top: 1px solid var(--ag-border); }

img.gravatar { border-radius: 50%; }

.tooltip span.tip {
  background: rgba(14, 19, 40, .95);
  border: 1px solid var(--ag-glass-edge-hi);
  border-radius: var(--ag-radius-sm);
  box-shadow: var(--ag-shadow-pop);
  color: var(--ag-shell-text);
}

.autoscroll { border-radius: 10px; }

.other-formats { color: var(--ag-muted); }

/* Scrollbars */
::-webkit-scrollbar { height: 10px; width: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
  background: rgba(100, 116, 139, .45);
  border-radius: 999px;
  transition: background .2s ease;
}
::-webkit-scrollbar-thumb:hover { background: rgba(34, 211, 238, .55); }
* { scrollbar-width: thin; scrollbar-color: rgba(100, 116, 139, .5) transparent; }

/* --------------------------------------------------------------------------
   Reduced motion
   -------------------------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
  #content, #login-form, .drdn-content, #context-menu, div.flash { animation: none; }
}

/* ==========================================================================
   SMTwin — Projeler kart ızgarası (board görünümü yeniden tasarımı) v2
   ========================================================================== */
/* ══════════ PROJE KARTLARI — gerçek Redmine DOM'una göre ══════════ */
#projects-index ul.projects{list-style:none;margin:0;padding:0;}
#projects-index>ul.projects.root{display:grid;grid-template-columns:repeat(auto-fill,minmax(316px,1fr));gap:20px;}
#projects-index li.root{position:relative;background:var(--ag-surface);border:1px solid var(--ag-border);border-radius:var(--ag-radius);box-shadow:0 1px 2px rgba(2,6,23,.05);overflow:hidden;transition:transform .22s cubic-bezier(.2,.8,.3,1),box-shadow .25s,border-color .25s;}
#projects-index li.root::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--card-accent,var(--ag-grad));transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.2,.8,.3,1);z-index:2;}
/* köşe "aç" oku (li seviyesinde — ::after boşta) */
#projects-index li.root>*{}
#projects-index li.root::after{content:"→";position:absolute;right:15px;bottom:14px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--ag-surface-tint);color:var(--card-edge,var(--ag-cyan-deep));font-size:15px;font-weight:800;border:1px solid var(--ag-border);opacity:.7;transition:transform .22s,opacity .22s,background .22s,color .22s;z-index:2;}
#projects-index li.root:hover{transform:translateY(-5px);border-color:var(--card-edge,var(--ag-cyan));box-shadow:var(--ag-shadow-pop);}
#projects-index li.root:hover::before{transform:scaleX(1);}
#projects-index li.root:hover::after{opacity:1;transform:translateX(3px);background:var(--card-accent,var(--ag-grad));color:#fff;border-color:transparent;}

#projects-index li.root>div.root{padding:20px 58px 20px 80px;display:flex;flex-direction:column;gap:11px;min-height:132px;position:relative;}
#projects-index li.root>div.root::before{content:"";position:absolute;left:20px;top:20px;width:46px;height:46px;border-radius:12px;background:var(--card-accent,var(--ag-grad));box-shadow:0 6px 16px -6px var(--card-glow,rgba(34,211,238,.55)),inset 0 1px 0 rgba(255,255,255,.35);}
#projects-index li.root>div.root::after{content:"";position:absolute;left:29px;top:29px;width:28px;height:28px;pointer-events:none;background:rgba(255,255,255,.95);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7a2 2 0 0 1 2-2h4l2 2h6a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3C/svg%3E") center/24px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7a2 2 0 0 1 2-2h4l2 2h6a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3C/svg%3E") center/24px no-repeat;}

#projects-index li.root a.project{font-size:17px;font-weight:700;color:var(--ag-text);text-decoration:none;line-height:1.3;letter-spacing:-.01em;display:inline-block;background:none!important;padding:0!important;max-width:calc(100% - 8px);}
#projects-index li.root a.project:hover{color:var(--ag-blue);}
#projects-index li.root a.project::before{content:"PROJE";display:block;font-size:10px;font-weight:700;letter-spacing:.14em;color:var(--card-edge,var(--ag-cyan-deep));margin-bottom:4px;background:none!important;width:auto!important;height:auto!important;padding:0!important;}
#projects-index li.root div.wiki.description{color:var(--ag-text-soft);font-size:13.5px;line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}

/* üyelik rozeti (avatarın yanında, adın üstünde sağda) */
#projects-index li.root a.project.my-project::after{content:"Üyesiyim";position:absolute;top:18px;right:15px;font-size:10.5px;font-weight:700;letter-spacing:.04em;color:var(--ag-blue-deep);background:var(--ag-surface-tint);border:1px solid #d5e0f5;padding:4px 10px;border-radius:999px;}
/* yer imi → avatarda altın halka + köşe yıldız */
#projects-index li.root:has(a.icon-bookmarked-project)>div.root::before{box-shadow:0 6px 16px -6px var(--card-glow,rgba(34,211,238,.55)),inset 0 1px 0 rgba(255,255,255,.35),0 0 0 2px #f5c451;}
#projects-index li.root:has(a.icon-bookmarked-project)>div.root{}

/* renk rotasyonu */
#projects-index li.root:nth-child(6n+1){--card-accent:linear-gradient(135deg,#2563eb,#06b6d4);--card-edge:#0ea5e9;--card-glow:rgba(14,165,233,.5);}
#projects-index li.root:nth-child(6n+2){--card-accent:linear-gradient(135deg,#8b5cf6,#22d3ee);--card-edge:#8b5cf6;--card-glow:rgba(139,92,246,.5);}
#projects-index li.root:nth-child(6n+3){--card-accent:linear-gradient(135deg,#06b6d4,#22c55e);--card-edge:#10b981;--card-glow:rgba(16,185,129,.5);}
#projects-index li.root:nth-child(6n+4){--card-accent:linear-gradient(135deg,#f59e0b,#ef4444);--card-edge:#f59e0b;--card-glow:rgba(245,158,11,.5);}
#projects-index li.root:nth-child(6n+5){--card-accent:linear-gradient(135deg,#ec4899,#8b5cf6);--card-edge:#ec4899;--card-glow:rgba(236,72,153,.5);}
#projects-index li.root:nth-child(6n+6){--card-accent:linear-gradient(135deg,#0ea5e9,#6366f1);--card-edge:#6366f1;--card-glow:rgba(99,102,241,.5);}

/* ==========================================================================
   SMTwin — Proje genel-bakış BI dashboard (projects#show)
   ========================================================================== */
/* ══════════ BI WIDGET (proje genel-bakış — .action-show'a scope) ══════════ */
.controller-projects.action-show .box{position:relative;background:var(--ag-surface);border:1px solid var(--ag-border);border-radius:var(--ag-radius);box-shadow:0 1px 2px rgba(2,6,23,.05);overflow:hidden;padding:0 0 14px;margin:0;}
.controller-projects.action-show .box::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--w-accent,var(--ag-grad));z-index:1;}
.controller-projects.action-show .box>h3{display:flex;align-items:center;gap:11px;margin:0 0 4px;padding:15px 20px;font-size:14px;font-weight:700;color:var(--ag-text);border-bottom:1px solid var(--ag-border);background:var(--ag-surface-soft);background-image:none;}
.controller-projects.action-show .box>h3.icon::before{content:"";width:30px;height:30px;border-radius:9px;background:var(--w-accent,var(--ag-grad))!important;box-shadow:0 4px 10px -4px var(--w-glow,rgba(34,211,238,.5));flex:none;-webkit-mask:var(--w-ico,none) center/17px no-repeat;mask:var(--w-ico,none) center/17px no-repeat;background-clip:border-box;padding:0;}
/* blok tipine göre renk + ikon */
.controller-projects.action-show .issues.box{--w-accent:linear-gradient(135deg,#2563eb,#06b6d4);--w-glow:rgba(14,165,233,.5);}
.controller-projects.action-show .members.box{--w-accent:linear-gradient(135deg,#8b5cf6,#22d3ee);--w-glow:rgba(139,92,246,.5);}
.controller-projects.action-show .spent-time.box{--w-accent:linear-gradient(135deg,#06b6d4,#22c55e);--w-glow:rgba(16,185,129,.5);}

/* — İş Takibi: BI tablo — */
.controller-projects.action-show table.issue-report{width:calc(100% - 40px);border-collapse:separate;border-spacing:0;margin:14px 20px 6px;}
.controller-projects.action-show table.issue-report th{text-align:right;padding:8px 14px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ag-muted);border-bottom:2px solid var(--ag-border);}
.controller-projects.action-show table.issue-report th:first-child{text-align:left;}
.controller-projects.action-show table.issue-report tbody td{padding:12px 14px;text-align:right;border-bottom:1px solid var(--ag-border);font-family:var(--ag-mono);font-size:16px;font-weight:600;}
.controller-projects.action-show table.issue-report tbody tr:last-child td{border-bottom:0;}
.controller-projects.action-show table.issue-report tbody tr:hover td{background:var(--ag-surface-tint);}
.controller-projects.action-show table.issue-report td.name{text-align:left;font-family:var(--ag-font);font-size:14px;font-weight:600;}
.controller-projects.action-show table.issue-report td.name a{color:var(--ag-text)!important;text-decoration:none;}
.controller-projects.action-show table.issue-report td a{text-decoration:none;}
.controller-projects.action-show table.issue-report tbody td:nth-child(2) a{color:var(--ag-warning);}
.controller-projects.action-show table.issue-report tbody td:nth-child(3) a{color:var(--ag-success);}
.controller-projects.action-show table.issue-report td.total{background:var(--ag-surface-soft);}
.controller-projects.action-show table.issue-report td.total a{color:var(--ag-blue-deep);font-weight:800;}
.controller-projects.action-show .box>p{font-size:12.5px;color:var(--ag-muted);padding:6px 20px 4px;margin:0;}
.controller-projects.action-show .box>p a{color:var(--ag-cyan-deep);text-decoration:none;font-weight:600;}

/* — Üyeler: rol satırları (gerçek DOM: <p><span.label>Rol:</span> <a>…</a>) — */
.controller-projects.action-show .members.box>p{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:0 20px 10px;padding:11px 14px;background:var(--ag-surface-soft);border:1px solid var(--ag-border);border-radius:10px;font-size:13px;color:var(--ag-text-soft);}
.controller-projects.action-show .members.box>p:first-of-type{margin-top:12px;}
.controller-projects.action-show .members.box .label{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ag-muted);min-width:84px;}
.controller-projects.action-show .members.box>p a{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--ag-blue-deep)!important;text-decoration:none;background:#fff;border:1px solid var(--ag-border);padding:4px 11px 4px 5px;border-radius:999px;}
.controller-projects.action-show .members.box>p a::before{content:"";width:20px;height:20px;border-radius:50%;background:var(--ag-grad);flex:none;}

/* — Zaman Takibi: KPI satırları (gerçek DOM: <ul><li>Etiket: değer</li>) — */
.controller-projects.action-show .spent-time.box>ul{list-style:none;margin:12px 20px 8px;padding:0;display:grid;gap:10px;}
.controller-projects.action-show .spent-time.box>ul>li{background:var(--ag-surface-soft);border:1px solid var(--ag-border);border-left:3px solid var(--ag-cyan-deep);border-radius:10px;padding:12px 16px;font-size:15px;font-weight:600;color:var(--ag-text);font-family:var(--ag-mono);}
