/* ===========================
   GLOBAL
   =========================== */

body {
  margin: 0;
  font-family: Georgia, serif;
  background: #f8f8f8;
  color: #333;
}

/* AO3 uses Arial for UI elements */
button, input, nav a, #sidebar a, .top-right, .main-nav {
  font-family: Arial, sans-serif;
}

/* ===========================
   TOP RED BAR — pixel-accurate
   =========================== */
   
   /* Top small bar with red logo */
.top-bar-red {
  background: #fff;
  padding: 4px 16px;
  border-bottom: 1px solid #ccc;
  display: flex;
  align-items: center;
}

.top-red-logo {
  height: 22px;
}

/* Black boxed AO3 logo under header */
/* USER ROW: logo aligned with content and username right */
/* ===========================
   MAIN CONTENT WRAPPER
   =========================== */
#main-content-wrapper {
  display: flex;
  flex-direction: column;
  margin-left: 230px;       /* sidebar width */
  width: calc(100% - 230px);
  max-width: 1000px;        /* increase width */
  padding-top: 10px;
}


/* ===========================
   USER ROW: Black logo + username
   =========================== */
.user-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  border-bottom: 1px dotted #888;
  padding: 0 0 4px 0;
  margin-bottom: -16px; /* pulls logo over content */
}

/* Black AO3 logo */
.black-logo {
  height: 60px;
  padding: 4px;
  background: #000;
  border: 1px dotted #888; /* soft gray dotted line */
  box-sizing: border-box;
  margin-top: -20px;       /* overlap first fanfic card */
}



/* Username aligned right */
.username-title {
  font-size: 24px;
  margin: 0;
  line-height: 1;
  text-align: right;
}

/* ===========================
   PAGE WRAPPER
   =========================== */
#page {
  display: flex;
  margin: 0 auto;
  max-width: 1200px;  /* slightly wider dashboard */
  padding-top: 10px;
}




#ao3-topbar {
  background: linear-gradient(#990000, #7a0000);
  color: white;
  padding: 6px 12px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #550000;
}

.top-left,
.top-right {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* AO3 dove logo */
.ao3-dove {
  width: 48px;
  height: 48px;
  margin-right: 8px;
}

.ao3-logo {
    width: 110px; /* screenshot-accurate */
    margin-right: 12px;
}

.ao3-logo-area {
    display: flex;
    align-items: center;
}


/* nav links */
#ao3-topbar a {
  color: white;
  text-decoration: none;
  margin-right: 14px;
  font-size: 14px;
}

#ao3-topbar a:hover {
  text-decoration: underline;
}

/* search area */
#ao3-topbar .searchbox {
  background: white;
  border: 1px solid #ccc;
  border-radius: 12px;
  padding: 4px 10px;
  width: 140px;
}

#ao3-topbar .searchbtn {
  background: #ddd;
  color: #333;
  border: 1px solid #aaa;
  border-radius: 5px;
  padding: 4px 12px;
  cursor: pointer;
}

/* ===========================
   PAGE LAYOUT
   =========================== */

#page {
  display: flex;
  margin: 0 auto;
  max-width: 1400px;
  padding-top: 10px;
}

/* ===========================
   SIDEBAR — AO3 accurate
   =========================== */

#sidebar {
  width: 210px;
  padding: 10px 15px;
  font-size: 14px;
}

#sidebar ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

#sidebar a {
  display: block;
  padding: 3px 0;
  color: #660000;
  text-decoration: none;
}

#sidebar a:hover {
  text-decoration: underline;
}

#sidebar hr {
  border: 0;
  border-top: 1px solid #ccc;
  margin: 14px 0;
}

/* ===========================
   MAIN CONTENT
   =========================== */

#content {
  flex: 1;
  background: white;
  border: 1px solid #ccc;
  padding: 20px;
}

.username-title {
  text-align: right;
  font-size: 26px;
  margin-top: 5px;
  margin-bottom: 10px;
}

.user-buttons {
  text-align: right;
  margin-bottom: 20px;
}

.user-buttons button {
  padding: 4px 10px;
  font-size: 14px;
  margin-left: 6px;
}

/* ===========================
   SECTION BOXES
   =========================== */

.section-box {
  border: 1px solid #ccc;
  margin-bottom: 18px;
}

.section-box h2 {
  background: #ddd;
  padding: 6px 10px;
  margin: 0;
  font-size: 18px;
  border-bottom: 1px solid #ccc;
}

.fandom-list {
  padding: 10px;
}

/* ===========================
   WORK CARD (Accurate to screenshot)
   =========================== */

.work-card {
  background: #fff;
  border: 1px solid #bbb;
  padding: 12px;
  box-shadow: 0px 1px 3px rgba(0,0,0,0.18);
}

.work-header {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}


.rating-icons {
  display: flex;
  gap: 3px;
}

/* AO3 rating icon colors */

.icon {
  background-image: url("/icons.png");
  background-size: 200% 200%; /* split into 4 quadrants */
  width: 32px;
  height: 32px;
  color: transparent;
  padding: 0;
  border-radius: 0;
}

.rating-icons .icon {
  background-image: url("/icons.png");
  background-size: contain;
  background-repeat: no-repeat;
  width: 32px;   /* adjust as needed */
  height: 32px;  /* adjust as needed */
  color: transparent; /* hide the T/M/E letters */
  padding: 0;
  border-radius: 0;
}

.work-meta a {
  display: block;
  font-size: 15px;
  text-decoration: none;
  color: #660000;
}

.work-meta a:hover {
  text-decoration: underline;
}

.date {
  margin-left: auto;
  font-size: 13px;
  color: #444;
}


/* ===========================
   TAGS — AO3 accurate underline
   =========================== */

.tags {
  line-height: 1.5;
  font-size: 14px;
  margin: 10px 0 8px 0;
}

.tags strong, .tags a {
  border-bottom: 1px dotted #aaa;
  text-decoration: none;
}

.tags strong:hover, .tags a:hover {
  border-bottom-style: solid;
}

/* ===========================
   SUMMARY + META
   =========================== */

.summary {
  font-size: 15px;
  margin: 10px 0;
}

.meta-bottom {
  font-size: 13px;
  color: #444;
  font-family: Arial, sans-serif;
  margin-top: 6px;
}

/* buttons under work card */
.work-buttons button,
.pseud-buttons button {
  padding: 4px 10px;
  margin-right: 6px;
  margin-top: 8px;
  font-size: 14px;
}
