/* My.Log — identidade editorial fine-line */
:root {
  --background:#191919; --surface:#222222; --surface-soft:#202020; --foreground:#F3F3EF;
  --muted:#999999; --border:#343434; --icon:#D8D8D2; --accent:#F3F3EF;
  --danger:#B9B9B3; --shadow:none; --radius:8px;
}
body[data-theme="light"] {
  --background:#F7F7F5; --surface:#FFFFFF; --surface-soft:#F2F2EF; --foreground:#111111;
  --muted:#777777; --border:#E5E5E2; --icon:#333333; --accent:#111111;
  --danger:#555555;
}
* { box-shadow:none !important; }
html, body { background:var(--background) !important; color:var(--foreground) !important; }
body { font-family:'DM Sans', ui-sans-serif, sans-serif !important; letter-spacing:.005em; }
h1,h2,h3,.logo,.dialog-title,.exec-title,.workout-name { font-family:'Cormorant Garamond', Georgia, serif !important; letter-spacing:.01em; }
h2 { font-size:28px !important; font-weight:600 !important; margin-bottom:8px !important; }
h3 { font-size:19px !important; font-weight:600 !important; }
.app-header { background:var(--background) !important; border-bottom:1px solid var(--border) !important; padding:18px 28px !important; }
.logo { color:var(--foreground) !important; font-size:25px !important; text-shadow:none !important; }
.logo em { color:var(--foreground) !important; font-style:normal; }
.doom-mark { width:25px !important; height:25px !important; object-fit:contain; border-radius:50%; filter:grayscale(1) contrast(1.2) !important; }
.scroll-area { padding:42px 48px 100px !important; max-width:1160px; width:100%; margin:0 auto; }
.btn-primary { background:var(--foreground) !important; color:var(--background) !important; border:1px solid var(--foreground) !important; border-radius:5px !important; padding:11px 16px !important; font-size:13px !important; font-weight:600 !important; }
.btn-ghost { background:transparent !important; color:var(--foreground) !important; border:1px solid var(--border) !important; border-radius:5px !important; padding:10px 14px !important; font-size:12px !important; }
.btn-ghost:hover,.btn-primary:hover { opacity:.72; transform:none !important; }
.btn-icon { color:var(--icon) !important; font-size:18px !important; padding:7px !important; }
.pf-input, select, textarea { background:var(--surface) !important; color:var(--foreground) !important; border:1px solid var(--border) !important; border-radius:5px !important; font-family:'DM Sans',sans-serif !important; }
.info-card,.workout-card,.dash-card,.dialog,.quick-form,.bau-card,.bau-summary,.reader-notes { background:var(--surface) !important; border:1px solid var(--border) !important; border-radius:var(--radius) !important; }
.info-card { padding:22px !important; margin-bottom:18px !important; }
.workout-card { padding:17px 0 !important; border-width:0 0 1px !important; border-radius:0 !important; background:transparent !important; }
.workout-card:active { transform:none !important; background:var(--surface-soft) !important; }
.workout-name { font-size:20px !important; }
.workout-info,.muted-copy,.exec-meta { color:var(--muted) !important; }
.dashboard-grid { display:flex !important; flex-wrap:wrap; gap:0 !important; border-top:1px solid var(--border); border-bottom:1px solid var(--border); margin:18px 0 38px !important; }
.dash-card { flex:1 1 180px; min-height:86px; padding:16px 18px !important; border:0 !important; border-right:1px solid var(--border) !important; border-radius:0 !important; background:transparent !important; }
.dash-card-wide { flex-basis:100%; border-right:0 !important; border-bottom:1px solid var(--border) !important; }
.dash-label { color:var(--muted) !important; font-size:10px !important; letter-spacing:.12em; }
.dash-value { font-family:'Cormorant Garamond',Georgia,serif; font-size:25px !important; color:var(--foreground) !important; }
.mylog-sidebar { position:fixed; z-index:1200; left:0; top:0; bottom:0; width:212px; padding:24px 18px; background:var(--background) !important; border-right:1px solid var(--border) !important; transition:width .2s ease; }
.mylog-sidebar.closed { width:64px; }
.sidebar-toggle { width:30px; height:30px; border:0 !important; border-radius:0 !important; background:transparent !important; color:var(--icon); cursor:pointer; display:flex; align-items:center; justify-content:center; }
.sidebar-toggle img { width:17px; height:17px; object-fit:contain; filter:grayscale(1) contrast(1.3); }
.sidebar-brand { display:flex; align-items:center; gap:9px; font-family:'Cormorant Garamond',Georgia,serif; font-weight:600; margin:28px 7px 34px; white-space:nowrap; overflow:hidden; }
.sidebar-brand img { width:24px; height:24px; border-radius:50%; object-fit:contain; filter:grayscale(1); }
.sidebar-brand span { font-size:21px; }
.mylog-sidebar nav { display:flex; flex-direction:column; gap:2px; }
.side-item { border:0 !important; border-radius:0 !important; border-left:1px solid transparent !important; background:transparent !important; color:var(--muted) !important; padding:11px 8px !important; display:flex; align-items:center; gap:11px; cursor:pointer; text-align:left; font-family:'DM Sans',sans-serif; transition:opacity .18s, border-color .18s, color .18s; }
.side-item span { width:20px; text-align:center; font-size:17px; line-height:1; color:var(--icon); display:flex; align-items:center; justify-content:center; }
.side-item span svg { width:17px; height:17px; stroke:currentColor; fill:none; stroke-width:1.5; }
.side-item b { font-size:12px; font-weight:500; white-space:nowrap; }
.side-item.active { border-left-color:var(--foreground) !important; color:var(--foreground) !important; }
.side-item:hover { color:var(--foreground) !important; opacity:.8; }
.mylog-sidebar.closed .sidebar-brand span,.mylog-sidebar.closed .side-item b { display:none; }
.mylog-sidebar.closed .sidebar-brand { margin-left:0; }
.mylog-sidebar.closed .side-item { justify-content:center; padding-left:5px !important; padding-right:5px !important; }
.sidebar-theme { margin:32px 7px 0; padding-top:15px; border-top:1px solid var(--border); color:var(--muted); background:none; border-left:0; border-right:0; border-bottom:0; font:11px 'DM Sans',sans-serif; cursor:pointer; }
.mylog-sidebar.closed .sidebar-theme span { display:none; }
.screen.active { padding-left:212px !important; }
.sidebar-collapsed .screen.active { padding-left:64px !important; }
.quick-form { padding:18px !important; margin:12px 0 22px !important; }
.compact-row { border-bottom:1px solid var(--border) !important; padding:13px 4px !important; }
.check-circle { width:18px; height:18px; border:1px solid var(--muted); background:transparent; border-radius:50%; }
.progress-track { background:var(--border) !important; height:3px !important; }
.progress-track i { background:var(--foreground) !important; }
.execution-header { background:transparent !important; border:0 !important; border-bottom:1px solid var(--border) !important; border-radius:0 !important; padding:18px 0 !important; }
.exercise-card { border-bottom:1px solid var(--border); padding-bottom:22px; margin-bottom:28px; }
.execution-table { border-top:1px solid var(--border); }
.table-header { color:var(--muted) !important; font-size:10px !important; }
.table-row { border-bottom:1px solid var(--border) !important; }
.series-badge { border-radius:50% !important; background:transparent !important; border:1px solid var(--border); color:var(--foreground) !important; font-size:10px !important; }
.dialog-overlay { background:rgba(20,20,20,.62) !important; backdrop-filter:blur(2px); }
.dialog { background:var(--surface) !important; }
.screen, .mylog-sidebar, .app-header, .info-card, .workout-card, .dash-card, input, textarea, select, button { transition:background-color .2s ease,color .2s ease,border-color .2s ease,opacity .2s ease; }
@media (max-width:700px) { .scroll-area { padding:28px 22px 90px !important; } .app-header { padding:15px 18px !important; } .mylog-sidebar { width:64px; padding:18px 12px; } .mylog-sidebar .sidebar-brand span,.mylog-sidebar .side-item b { display:none; } .mylog-sidebar .sidebar-brand { margin-left:0; } .mylog-sidebar .side-item { justify-content:center; } .screen.active { padding-left:64px !important; } }
.mylog-inline-icon { display:inline-flex; width:34px; height:34px; align-items:center; justify-content:center; color:var(--icon); }
.mylog-inline-icon svg { width:25px; height:25px; stroke:currentColor; fill:none; stroke-width:1.5; }
.mylog-sidebar .sidebar-theme { color:var(--muted); }
