/* CampusShield AI visual refresh — inspired by bento layouts, progressive blur,
   controlled light rays, modern minimalism and restrained neo-brutalist accents.
   Presentation only: no data, permission, navigation or emergency-flow changes. */

:root {
  --cs-visual-forest: #103b2d;
  --cs-visual-forest-deep: #08291f;
  --cs-visual-mint: #8be3a0;
  --cs-visual-mint-soft: #eaf8ee;
  --cs-visual-canvas: #f4f8f4;
  --cs-visual-line: #dce9df;
  --cs-visual-ink: #163528;
  --cs-visual-muted: #718278;
}

html { background: var(--cs-visual-canvas); }
body {
  background-color: var(--cs-visual-canvas);
  background-image:
    linear-gradient(rgba(31, 112, 70, .025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(31, 112, 70, .025) 1px, transparent 1px),
    radial-gradient(ellipse at 90% 0%, rgba(139, 227, 160, .10), transparent 38%);
  background-size: 44px 44px, 44px 44px, auto;
}

/* Frosted navigation: the content remains legible over the glass surface. */
.topbar {
  background: rgba(250, 253, 250, .78);
  border-bottom-color: rgba(207, 224, 212, .82);
  -webkit-backdrop-filter: blur(22px) saturate(1.25);
  backdrop-filter: blur(22px) saturate(1.25);
}
.sidebar {
  background: linear-gradient(178deg, #103b2d 0%, #0d3428 58%, #092a21 100%);
  box-shadow: 12px 0 36px rgba(8, 41, 31, .12);
}
.sidebar .nav button.active {
  background: linear-gradient(100deg, rgba(139, 227, 160, .18), rgba(255,255,255,.045));
  border-color: rgba(139, 227, 160, .16);
}
.sidebar .nav button.active::before { background: var(--cs-visual-mint); }
.sidebar .nav button:hover { background: rgba(255,255,255,.095); }

/* Stronger type hierarchy and more generous spacing. */
.heading h1,
.heading h2,
.dashboard-section-heading,
.panel-heading h2,
.campus-dashboard-card-head h3 {
  letter-spacing: -.045em;
}
.dashboard-section-heading {
  color: var(--cs-visual-ink);
  font-size: clamp(22px, 2.4vw, 30px);
  font-weight: 850;
  line-height: 1.08;
}
.heading p,
.panel-heading p { line-height: 1.65; }
.content { padding: clamp(16px, 2.4vw, 32px); }
.main, .content { background: transparent; }

/* Light-ray hero: a soft green beam, not a flashing animation. */
#page-dashboard .campus-dashboard-hero {
  isolation: isolate;
  overflow: hidden;
  border-color: rgba(139, 227, 160, .25) !important;
  background:
    radial-gradient(ellipse at 78% 12%, rgba(91, 198, 118, .25), transparent 35%),
    radial-gradient(ellipse at 58% 112%, rgba(139, 227, 160, .16), transparent 38%),
    linear-gradient(125deg, #08291f 0%, #103b2d 54%, #18533a 100%) !important;
  box-shadow: 0 24px 54px rgba(8, 41, 31, .18), inset 0 1px rgba(255,255,255,.08) !important;
}
#page-dashboard .campus-dashboard-hero::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: -34%;
  left: 50%;
  width: 19%;
  height: 174%;
  pointer-events: none;
  opacity: .58;
  transform: rotate(12deg);
  transform-origin: center;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(139, 227, 160, .025) 24%,
    rgba(139, 227, 160, .16) 42%,
    rgba(231, 255, 233, .42) 49%,
    rgba(139, 227, 160, .18) 56%,
    transparent 100%);
  filter: blur(13px);
  mix-blend-mode: screen;
}
#page-dashboard .campus-dashboard-hero-main,
#page-dashboard .campus-dashboard-emergency {
  position: relative;
  z-index: 1;
}
#page-dashboard .campus-dashboard-hero h1 {
  max-width: 16ch;
  font-size: clamp(31px, 4vw, 52px);
  letter-spacing: -.065em;
  line-height: 1.02;
}
#page-dashboard .campus-dashboard-hero .hero-eyebrow { color: #a9efb7; }
#page-dashboard .campus-dashboard-hero .hero-eyebrow::before {
  width: 30px;
  height: 3px;
  background: var(--cs-visual-mint);
  box-shadow: 0 0 18px rgba(139, 227, 160, .5);
}
#page-dashboard .campus-dashboard-hero .hero-actions .btn:not(.secondary) {
  background: linear-gradient(115deg, #8be3a0, #53c982) !important;
  color: #08291f;
  box-shadow: 0 10px 24px rgba(71, 193, 119, .2);
}
#page-dashboard .campus-dashboard-emergency {
  border-color: rgba(213, 247, 221, .26);
  background: linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.055));
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}

/* Bento dashboard: information density is balanced by larger, clear cards. */
#campus-dashboard-panel {
  border-color: rgba(216, 232, 220, .9);
  border-radius: 24px;
  background: rgba(255,255,255,.83);
  box-shadow: 0 18px 44px rgba(16, 59, 45, .055);
}
.campus-dashboard-metrics { gap: 12px; }
.campus-dashboard-metric {
  position: relative;
  overflow: hidden;
  padding: 16px;
  border-color: rgba(211, 229, 216, .95);
  border-radius: 17px;
  background: linear-gradient(150deg, rgba(255,255,255,.96), rgba(242,249,243,.88));
  box-shadow: inset 0 1px rgba(255,255,255,.9), 0 8px 20px rgba(16,59,45,.035);
}
.campus-dashboard-metric::after {
  content: "";
  position: absolute;
  right: -25px;
  bottom: -38px;
  width: 92px;
  height: 92px;
  border: 1px solid rgba(42, 126, 70, .10);
  border-radius: 50%;
  box-shadow: 0 0 0 13px rgba(42, 126, 70, .025);
  pointer-events: none;
}
.campus-dashboard-metric strong {
  color: #174a35;
  font-size: clamp(23px, 2.2vw, 30px);
  letter-spacing: -.06em;
}
.campus-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 13px;
}
.campus-dashboard-grid > .campus-dashboard-card:nth-child(1) { grid-column: span 6; }
.campus-dashboard-grid > .campus-dashboard-card:nth-child(2) { grid-column: span 6; }
.campus-dashboard-grid > .campus-dashboard-card:nth-child(3) { grid-column: span 5; }
.campus-dashboard-grid > .campus-dashboard-card:nth-child(4) { grid-column: span 7; }
.campus-dashboard-card {
  min-height: 170px;
  padding: 17px;
  border-color: rgba(214, 230, 218, .96);
  border-radius: 19px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 10px 26px rgba(16,59,45,.045), inset 0 1px rgba(255,255,255,.9);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.campus-dashboard-card:hover {
  border-color: #a8d8b4;
  box-shadow: 0 16px 32px rgba(16,59,45,.075);
  transform: translateY(-2px);
}
.campus-dashboard-card-head h3 { color: #173e2d; font-size: 15px; }
.campus-dashboard-list-item { border-bottom-color: rgba(220, 233, 223, .9); }
.campus-dashboard-empty {
  border-color: #cfe2d3;
  background: linear-gradient(140deg, rgba(246,251,247,.9), rgba(255,255,255,.78));
}
.campus-dashboard-helpdesk {
  border-radius: 19px;
  background: linear-gradient(120deg, rgba(239,249,241,.95), rgba(255,255,255,.93));
}
.campus-dashboard-helpdesk-summary strong { color: #176241; }
.campus-dashboard-actions .btn { border-radius: 12px; }

/* Deeper surfaces, soft light and touch-friendly edges across insight/map panels. */
.dashboard-insight-card,
.campus-map-coverage-card {
  border-radius: 17px;
  background: linear-gradient(145deg, rgba(255,255,255,.94), rgba(242,249,243,.88));
  box-shadow: inset 0 1px rgba(255,255,255,.9), 0 8px 22px rgba(16,59,45,.035);
}
.campus-map-coverage-card strong { color: #185b3b; }
.campus-map-coverage-context {
  border-radius: 14px;
  background: rgba(246,251,247,.9);
}
.campus-map-search-wrap,
.campus-map-controls,
.campus-map-legend {
  background: rgba(250,253,250,.84);
  border-color: rgba(205,224,211,.9);
  box-shadow: 0 12px 28px rgba(12,48,34,.09);
  -webkit-backdrop-filter: blur(18px) saturate(1.2);
  backdrop-filter: blur(18px) saturate(1.2);
}

/* CampusPulse missions use expressive, neo-brutalist cards; other social panels stay calm. */
#campuspulse-social-suite .campuspulse-social-heading h2 {
  font-size: clamp(24px, 2.8vw, 34px);
  font-weight: 900;
  letter-spacing: -.06em;
}
#campuspulse-social-suite .campuspulse-social-tabs button[aria-selected="true"] {
  border-color: #103b2d;
  background: #103b2d;
  color: #f5fff7;
  box-shadow: 3px 3px 0 rgba(139, 227, 160, .75);
}
#campuspulse-social-suite [data-cps-panel="missions"] .campuspulse-social-card {
  border: 2px solid #173e2d;
  border-radius: 13px;
  background: #f4fbeF;
  box-shadow: 5px 5px 0 rgba(16,59,45,.14);
}
#campuspulse-social-suite [data-cps-panel="missions"] .campuspulse-social-card h3 {
  color: #123b2b;
  font-weight: 900;
  letter-spacing: -.035em;
}
#campuspulse-social-suite .campuspulse-social-card {
  border-radius: 17px;
  box-shadow: 0 10px 24px rgba(12,48,34,.045);
}
#campuspulse-social-suite .campuspulse-social-form {
  border-color: #d7e8db;
  border-radius: 17px;
  background: rgba(244,250,245,.84);
}
#campuspulse-social-suite .campuspulse-social-safety {
  border: 1px solid #d9e9dc;
  border-radius: 14px;
}

/* Bottom navigation behaves like a softly blurred floating surface on mobile. */
.mobile-bottom-nav {
  background: rgba(249,253,249,.86);
  border-color: rgba(205,224,211,.9);
  box-shadow: 0 14px 32px rgba(8,41,31,.15);
  -webkit-backdrop-filter: blur(22px) saturate(1.25);
  backdrop-filter: blur(22px) saturate(1.25);
}
.mobile-bottom-nav button.active {
  background: #e5f6e9;
  color: #145735;
}

/* Dark mode keeps the same hierarchy without translucent low-contrast text. */
html[data-theme="dark"] body {
  background-color: #0b1712;
  background-image:
    linear-gradient(rgba(139, 227, 160, .025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(139, 227, 160, .025) 1px, transparent 1px),
    radial-gradient(ellipse at 90% 0%, rgba(42,126,70,.12), transparent 38%);
}
html[data-theme="dark"] .topbar {
  background: rgba(13,31,24,.82);
  border-color: #29483a;
}
html[data-theme="dark"] #campus-dashboard-panel,
html[data-theme="dark"] .campus-dashboard-card,
html[data-theme="dark"] .campus-dashboard-metric,
html[data-theme="dark"] .dashboard-insight-card,
html[data-theme="dark"] .campus-map-coverage-card {
  border-color: #315342;
  background: rgba(18,43,31,.88);
  color: #e5f1e9;
}
html[data-theme="dark"] .campus-dashboard-card-head h3,
html[data-theme="dark"] .campus-dashboard-metric strong,
html[data-theme="dark"] .campus-dashboard-saved-count {
  color: #e4f5e9;
}
html[data-theme="dark"] .campus-dashboard-metric span,
html[data-theme="dark"] .campus-dashboard-metric small,
html[data-theme="dark"] .campus-dashboard-list-item p {
  color: #b4cabe;
}
html[data-theme="dark"] .campus-dashboard-empty,
html[data-theme="dark"] .campus-dashboard-helpdesk {
  border-color: #315342;
  background: #173b2a;
  color: #dbece1;
}
html[data-theme="dark"] #campuspulse-social-suite [data-cps-panel="missions"] .campuspulse-social-card {
  border-color: #8bd49a;
  background: #173a29;
  box-shadow: 5px 5px 0 rgba(139,227,160,.14);
}
html[data-theme="dark"] #campuspulse-social-suite [data-cps-panel="missions"] .campuspulse-social-card h3 {
  color: #effaf1;
}
html[data-theme="dark"] #campuspulse-social-suite .campuspulse-social-form {
  border-color: #315342;
  background: #122d20;
}
html[data-theme="dark"] .campus-map-search-wrap,
html[data-theme="dark"] .campus-map-controls,
html[data-theme="dark"] .campus-map-legend,
html[data-theme="dark"] .mobile-bottom-nav {
  border-color: #315342;
  background: rgba(13,34,24,.9);
  color: #e5f1e9;
}

/* Keep touch targets and layout stable at every breakpoint. */
@media (max-width: 1050px) {
  .campus-dashboard-grid > .campus-dashboard-card:nth-child(1),
  .campus-dashboard-grid > .campus-dashboard-card:nth-child(2),
  .campus-dashboard-grid > .campus-dashboard-card:nth-child(3),
  .campus-dashboard-grid > .campus-dashboard-card:nth-child(4) { grid-column: span 6; }
}
@media (max-width: 700px) {
  .content { padding: 14px; }
  .campus-dashboard-grid { grid-template-columns: minmax(0,1fr); }
  .campus-dashboard-grid > .campus-dashboard-card:nth-child(n) { grid-column: 1 / -1; }
  .campus-dashboard-card { min-height: 0; padding: 15px; border-radius: 16px; }
  .campus-dashboard-metric { padding: 12px; border-radius: 14px; }
  #page-dashboard .campus-dashboard-hero { border-radius: 21px; }
  #page-dashboard .campus-dashboard-hero::after { left: 67%; width: 24%; opacity: .32; }
  .topbar { -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
  .campus-dashboard-card:hover { transform: none; }
}
@media (max-width: 390px) {
  .campus-dashboard-metrics { gap: 7px; }
  .campus-dashboard-metric { padding: 10px; }
  #page-dashboard .campus-dashboard-hero h1 { font-size: clamp(28px, 8vw, 35px); }
}
@media (prefers-reduced-motion: reduce) {
  .campus-dashboard-card,
  #campuspulse-social-suite *,
  .campus-dashboard-hero::after {
    transition: none !important;
    animation: none !important;
    scroll-behavior: auto !important;
  }
  .campus-dashboard-card:hover { transform: none !important; }
}

/* Campus discovery and Campus Network: compact controls, clear section hierarchy and responsive cards. */
.campus-discovery-toolbar {
  display:grid;
  grid-template-columns:minmax(220px,2fr) repeat(3,minmax(145px,1fr));
  gap:12px;
  align-items:end;
  margin:18px 0;
  padding:15px;
  border:1px solid var(--cs-visual-line);
  border-radius:16px;
  background:rgba(255,255,255,.84);
  box-shadow:0 9px 24px rgba(16,59,45,.035);
}
.campus-discovery-toolbar .field {margin:0;min-width:0}
.campus-discovery-toolbar input,.campus-discovery-toolbar select {min-width:0;width:100%}
.campus-discovery-result-count {margin:0 0 12px;color:var(--cs-visual-muted);font-size:.84rem}
.campus-marketplace-card .campus-marketplace-price {font-size:1.1rem;color:#155b39}
.campus-my-listings {margin-top:20px;padding-top:16px;border-top:1px solid var(--cs-visual-line)}
.campus-my-listings .panel-heading {margin-bottom:8px}
.campus-my-listings .campus-network-card-grid {margin-top:10px}
.campus-network-intro {
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  margin:16px 0 20px;padding:18px 20px;border:1px solid #cfe3d4;border-radius:18px;
  background:linear-gradient(120deg,#f0faf2,#ffffff);
}
.campus-network-intro strong {display:block;color:#164631;font-size:1.02rem}
.campus-network-intro p {margin:5px 0 0;color:#64756b;line-height:1.55}
.campus-network-privacy,.campus-network-visibility {
  display:inline-flex;align-items:center;border:1px solid #cfe3d4;border-radius:999px;
  padding:7px 11px;background:#fff;color:#24613b;font-size:.76rem;font-weight:750;white-space:nowrap
}
.campus-network-tabs {display:flex;gap:8px;overflow-x:auto;border-bottom:1px solid var(--cs-visual-line);padding:5px 2px 14px;margin-bottom:18px}
.campus-network-tabs button {
  border:1px solid #d5e4d8;border-radius:999px;padding:10px 15px;background:#fff;
  color:#355347;font:inherit;font-size:.88rem;font-weight:750;white-space:nowrap;cursor:pointer
}
.campus-network-tabs button[aria-selected="true"] {background:#103b2d;border-color:#103b2d;color:#f5fff7;box-shadow:3px 3px 0 rgba(139,227,160,.7)}
.campus-network-tabs button:focus-visible,.campus-network-panel button:focus-visible,
.campus-network-panel input:focus-visible,.campus-network-panel textarea:focus-visible,
.campus-network-panel select:focus-visible {outline:3px solid #78c88c;outline-offset:2px}
.campus-network-panel[hidden] {display:none!important}
.campus-network-section-head {margin:7px 0 16px}
.campus-network-section-head h2 {margin:4px 0 6px;color:var(--cs-visual-ink);font-size:clamp(1.25rem,2.4vw,1.75rem);letter-spacing:-.04em}
.campus-network-section-head p {margin:0;color:var(--cs-visual-muted);line-height:1.6}
.campus-network-kicker {font-size:.7rem;font-weight:850;letter-spacing:.12em;color:#2a7e46}
.campus-network-form {margin:14px 0 20px;border-color:#dce9df;border-radius:17px;background:rgba(255,255,255,.9)}
.campus-network-form h3 {margin:0 0 4px;color:#173e2d;font-size:1.02rem}
.campus-network-form .field {margin-bottom:10px}
.campus-network-form .muted {font-size:.8rem}
.campus-network-browse-tools {
  display:grid;grid-template-columns:minmax(200px,2fr) minmax(160px,1fr) auto;gap:12px;align-items:end;margin:18px 0 10px
}
.campus-network-browse-tools .field {margin:0;min-width:0}
.campus-network-browse-tools input,.campus-network-browse-tools select {width:100%;min-width:0}
.campus-network-card-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:12px 0}
.campus-network-card {
  min-width:0;padding:16px;border:1px solid #dce8df;border-radius:16px;background:#fff;
  box-shadow:0 8px 20px rgba(16,59,45,.04);overflow-wrap:anywhere
}
.campus-network-card-head {display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.campus-network-card h3,.campus-network-card h4 {margin:4px 0 8px;color:#163b2b;font-size:1.02rem;line-height:1.35;overflow-wrap:anywhere}
.campus-network-card h4 {font-size:.95rem}
.campus-network-card p {margin:8px 0;line-height:1.58}
.campus-network-description {white-space:pre-wrap;color:#405b4c}
.campus-network-meta {color:#728278;font-size:.79rem}
.campus-network-card-skills {color:#52675a;font-size:.84rem}
.campus-network-own-note {color:#24613b;font-size:.83rem;font-weight:700}
.campus-network-apply-form,.campus-network-intro-form {display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #e3ece5}
.campus-network-apply-form label,.campus-network-intro-form label {font-size:.82rem;font-weight:700;color:#345044}
.campus-network-apply-form textarea,.campus-network-intro-form textarea {width:100%;min-width:0;resize:vertical;border:1px solid #d5e1d8;border-radius:10px;padding:10px 12px;font:inherit;background:#fff}
.campus-network-intro-form select {width:100%;min-width:0;border:1px solid #d5e1d8;border-radius:10px;padding:10px 12px;font:inherit;background:#fff;color:inherit}
.campus-network-application {padding:12px;border:1px solid #e0eae3;border-radius:12px;background:#f7fbf8;margin-top:10px}
.campus-network-review {margin-top:18px}
.campus-network-footer {margin:20px 0 4px;padding:12px 14px;border:1px solid #dce9df;border-radius:13px;background:#f6faf7;color:#63746a;font-size:.8rem;line-height:1.6}
@media(max-width:900px) {
  .campus-discovery-toolbar {grid-template-columns:repeat(2,minmax(0,1fr))}
  .campus-network-card-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px) {
  .campus-discovery-toolbar,.campus-network-browse-tools {grid-template-columns:minmax(0,1fr);padding:12px}
  .campus-network-card-grid {grid-template-columns:minmax(0,1fr)}
  .campus-network-intro {padding:15px}
  .campus-network-tabs {margin-left:-2px;margin-right:-2px}
  .campus-network-card {padding:14px}
}
html[data-theme="dark"] .campus-discovery-toolbar,
html[data-theme="dark"] .campus-network-card,
html[data-theme="dark"] .campus-network-application,
html[data-theme="dark"] .campus-network-form {
  border-color:#315342;background:#122d20;color:#e5f1e9
}
html[data-theme="dark"] .campus-network-intro,
html[data-theme="dark"] .campus-network-footer {
  border-color:#315342;background:#173b2a;color:#dbece1
}
html[data-theme="dark"] .campus-network-intro strong,
html[data-theme="dark"] .campus-network-card h3,
html[data-theme="dark"] .campus-network-card h4,
html[data-theme="dark"] .campus-network-section-head h2 {color:#e4f5e9}
html[data-theme="dark"] .campus-network-tabs button {border-color:#315342;background:#142d21;color:#d7eadc}
html[data-theme="dark"] .campus-network-tabs button[aria-selected="true"] {background:#8be3a0;border-color:#8be3a0;color:#08291f}
html[data-theme="dark"] .campus-network-apply-form textarea,
html[data-theme="dark"] .campus-network-intro-form textarea,
html[data-theme="dark"] .campus-network-intro-form select {border-color:#315342;background:#0d2419;color:#e5f1e9}
html[data-theme="dark"] .campus-network-intro-form label {color:#cde3d4}

/* The creator's private submissions stay visually separate from public network results. */
.campus-network-my-posts {
  margin:18px 0 4px;padding:16px;border:1px solid #dce9df;border-radius:16px;
  background:linear-gradient(145deg,#f7fbf8,#ffffff);
}
.campus-network-my-posts .panel-heading {margin:0 0 10px}
.campus-network-my-posts .panel-heading h3 {margin:0 0 4px;color:#173e2d;font-size:1rem}
.campus-network-my-posts .panel-heading p {margin:0;color:#718278;font-size:.82rem;line-height:1.5}
.campus-network-own-post {box-shadow:none;background:#fff}
.campus-network-status {display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#eef3ef;color:#425b4d;font-size:.74rem;font-weight:750;white-space:nowrap}
.campus-network-status[data-status="pending"] {background:#fff4dd;color:#815819}
.campus-network-status[data-status="published"] {background:#eaf8ee;color:#1e693a}
.campus-network-status[data-status="closed"],.campus-network-status[data-status="rejected"] {background:#f1f2f1;color:#626d66}
.campus-network-pending-note {padding:9px 11px;border-radius:10px;background:#fff8e9;color:#78591e;font-size:.8rem}
html[data-theme="dark"] .campus-network-my-posts {border-color:#315342;background:#122d20}
html[data-theme="dark"] .campus-network-own-post {background:#173b2a}
html[data-theme="dark"] .campus-network-pending-note {background:#40351e;color:#f4d99d}



/* Compact, responsive dashboard actions; the existing topbar search remains the only search surface. */
#campus-dashboard-actions { display:flex;flex-wrap:wrap;gap:9px;margin-top:15px; }
#campus-dashboard-actions .btn { min-height:44px; }
@media (max-width:760px) {
  #campus-dashboard-actions { display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:360px) {
  #campus-dashboard-actions { grid-template-columns:minmax(0,1fr); }
}


/* My Day: a clear, private daily agenda that matches the forest-green workspace. */
#campus-my-day.campus-my-day-panel {
  min-width: 0;
  margin: 18px 0 22px;
  padding: clamp(15px, 2vw, 22px);
  border: 1px solid #dce9df;
  border-radius: 20px;
  background: linear-gradient(145deg, #ffffff 0%, #f5fbf6 100%);
  box-shadow: 0 12px 30px rgba(16, 59, 45, .06);
}
#campus-my-day .campus-my-day-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 11px;
}
#campus-my-day-title {
  margin: 0;
  color: #163b2b;
  font-size: clamp(1.12rem, 2.2vw, 1.42rem);
  font-weight: 850;
  letter-spacing: -.035em;
  line-height: 1.25;
}
#campus-my-day-date {
  margin: 5px 0 0;
  color: #6b7e70;
  font-size: .84rem;
  line-height: 1.45;
}
#campus-my-day .campus-my-day-open {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 9px 13px;
  border: 1px solid #cfe3d4;
  border-radius: 11px;
  background: #edf8ef;
  color: #236b3b;
  font: inherit;
  font-size: .82rem;
  font-weight: 800;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
#campus-my-day .campus-my-day-open:hover {
  border-color: #a9d6b7;
  background: #e2f3e6;
  transform: translateY(-1px);
}
#campus-my-day .campus-my-day-summary {
  margin: 0;
  color: #66796c;
  font-size: .82rem;
  font-weight: 700;
  line-height: 1.5;
}
#campus-my-day .campus-my-day-feed {
  display: grid;
  gap: 8px;
  margin: 13px 0 0;
  padding: 0;
  list-style: none;
}
#campus-my-day .campus-my-day-item {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid #e0eae3;
  border-radius: 14px;
  background: rgba(255, 255, 255, .92);
}
#campus-my-day .campus-my-day-time {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  max-width: 100%;
  min-height: 30px;
  padding: 5px 8px;
  border: 1px solid #d8eadc;
  border-radius: 9px;
  background: #f0f8f1;
  color: #24653b;
  font-size: .75rem;
  font-weight: 850;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
#campus-my-day .campus-my-day-copy {
  min-width: 0;
  overflow-wrap: anywhere;
}
#campus-my-day .campus-my-day-copy strong {
  display: block;
  color: #183d2b;
  font-size: .9rem;
  font-weight: 800;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
#campus-my-day .campus-my-day-meta {
  display: block;
  margin-top: 3px;
  color: #718278;
  font-size: .76rem;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
#campus-my-day .campus-my-day-kind {
  justify-self: end;
  max-width: 100%;
  padding: 5px 8px;
  border: 1px solid #d9eadd;
  border-radius: 999px;
  background: #f0f8f1;
  color: #2b7041;
  font-size: .7rem;
  font-weight: 800;
  line-height: 1.35;
  text-align: center;
  overflow-wrap: anywhere;
}
#campus-my-day .campus-my-day-item.is-complete .campus-my-day-copy strong {
  color: #728177;
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}
#campus-my-day .campus-my-day-empty,
#campus-my-day .campus-my-day-more {
  margin: 0;
  padding: 13px 14px;
  border: 1px dashed #cfe0d3;
  border-radius: 13px;
  background: #f8fcf9;
  color: #65776b;
  font-size: .82rem;
  line-height: 1.55;
}
#campus-my-day :where(button, a):focus-visible {
  outline: 3px solid #78c88c;
  outline-offset: 3px;
}
@media (max-width: 760px) {
  #campus-my-day.campus-my-day-panel { margin: 15px 0 18px; }
  #campus-my-day .campus-my-day-item {
    grid-template-columns: 70px minmax(0, 1fr);
    gap: 8px 10px;
    padding: 11px;
  }
  #campus-my-day .campus-my-day-kind {
    grid-column: 2;
    justify-self: start;
  }
}
@media (max-width: 390px) {
  #campus-my-day.campus-my-day-panel { padding: 12px; border-radius: 16px; }
  #campus-my-day .campus-my-day-header { align-items: flex-start; }
  #campus-my-day .campus-my-day-open { width: 100%; }
  #campus-my-day .campus-my-day-item {
    grid-template-columns: minmax(0, 1fr);
    gap: 7px;
    padding: 10px;
  }
  #campus-my-day .campus-my-day-kind { grid-column: 1; }
}
html[data-theme="dark"] #campus-my-day.campus-my-day-panel {
  border-color: #315342;
  background: linear-gradient(145deg, #122d20 0%, #173b2a 100%);
  box-shadow: 0 12px 30px rgba(0, 0, 0, .16);
}
html[data-theme="dark"] #campus-my-day-title,
html[data-theme="dark"] #campus-my-day .campus-my-day-copy strong {
  color: #e4f5e9;
}
html[data-theme="dark"] #campus-my-day-date,
html[data-theme="dark"] #campus-my-day .campus-my-day-summary,
html[data-theme="dark"] #campus-my-day .campus-my-day-meta {
  color: #b4cabe;
}
html[data-theme="dark"] #campus-my-day .campus-my-day-open {
  border-color: #315e49;
  background: #203d35;
  color: #b9edc2;
}
html[data-theme="dark"] #campus-my-day .campus-my-day-open:hover {
  border-color: #4d8261;
  background: #284b3d;
}
html[data-theme="dark"] #campus-my-day .campus-my-day-item {
  border-color: #315342;
  background: rgba(13, 36, 25, .72);
}
html[data-theme="dark"] #campus-my-day .campus-my-day-time,
html[data-theme="dark"] #campus-my-day .campus-my-day-kind {
  border-color: #315e49;
  background: #173b2a;
  color: #b9edc2;
}
html[data-theme="dark"] #campus-my-day .campus-my-day-empty,
html[data-theme="dark"] #campus-my-day .campus-my-day-more {
  border-color: #315342;
  background: #142f22;
  color: #c4d8ca;
}
html[data-theme="dark"] #campus-my-day .campus-my-day-item.is-complete .campus-my-day-copy strong {
  color: #9aafa0;
}
@media (prefers-reduced-motion: reduce) {
  #campus-my-day *, #campus-my-day *::before, #campus-my-day *::after {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
  #campus-my-day .campus-my-day-open:hover { transform: none; }
}
