:root{
  color-scheme:light;
  --burgundy:#5A1E2D;
  --burgundy-2:#421622;
  --beige:#C8B49A;
  --cream:#F7F6F4;
  --stone:#E3E3E3;
  --charcoal:#222222;
  --muted:#6f6864;
  --white:#fffdf9;
  --line:#eadfd4;
  --soft:#f1e8df;
  --danger:#a3213d;
  --ok:#5A1E2D;
  --shadow:0 22px 70px rgba(90,30,45,.16);
  --shadow-soft:0 16px 44px rgba(90,30,45,.10);
  --radius:28px;
  --font-display:Poppins,Inter,system-ui,sans-serif;
  --font-body:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(circle at 85% 3%,rgba(200,180,154,.42),transparent 30rem),
    radial-gradient(circle at 8% 8%,rgba(90,30,45,.12),transparent 28rem),
    linear-gradient(180deg,#fffdf9 0%,var(--cream) 48%,#efe5dc 100%);
  color:var(--charcoal);
  font-family:var(--font-body);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

button,input,select{font:inherit}
button,.file-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border:1px solid rgba(90,30,45,.18);
  color:var(--burgundy);
  background:rgba(255,253,249,.84);
  border-radius:999px;
  padding:.72rem 1rem;
  cursor:pointer;
  font-weight:850;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;
}
button:hover,.file-button:hover{transform:translateY(-2px);border-color:rgba(90,30,45,.34);box-shadow:0 12px 28px rgba(90,30,45,.12);background:#fffdf9}
button.primary{background:var(--burgundy);color:white;border-color:var(--burgundy);box-shadow:0 12px 28px rgba(90,30,45,.22)}
button.primary:hover{background:var(--burgundy-2)}
button.danger{background:var(--danger);border-color:var(--danger);color:white}

input,select{
  width:100%;
  border:1px solid rgba(90,30,45,.16);
  border-radius:18px;
  background:#fffdf9;
  color:var(--charcoal);
  padding:.82rem .9rem;
  margin-top:.38rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}
input:focus,select:focus{outline:3px solid rgba(200,180,154,.7);border-color:rgba(90,30,45,.38)}
select option{background:#fffdf9;color:var(--charcoal)}
label{display:block;color:var(--burgundy);font-size:.86rem;font-weight:850}

.site-header{
  border-bottom:1px solid rgba(90,30,45,.08);
  background:linear-gradient(135deg,#fffdf9 0%,#f3ebe3 52%,#eaded2 100%);
}
.topbar{
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
  min-height:92px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.brand-logo{width:clamp(216px,23vw,344px);height:auto;max-height:74px;object-fit:contain}
.topbar-note{color:var(--burgundy);font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;border:1px solid rgba(90,30,45,.14);border-radius:999px;padding:10px 14px;background:rgba(255,253,249,.52)}
.hero{
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
  padding:56px 0 72px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(250px,360px);
  gap:34px;
  align-items:end;
}
.hero h1{font-family:var(--font-display);font-size:clamp(3rem,7vw,6.2rem);line-height:.92;letter-spacing:-.065em;margin:.2rem 0 1rem;color:var(--charcoal);max-width:900px}
.hero h1 span{display:block}.hero h1 span:last-child{color:var(--burgundy)}
.lede{max-width:730px;color:#514b48;font-size:1.1rem;line-height:1.75;margin:0}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--burgundy);font-size:.78rem;font-weight:900;margin:0 0 .55rem}
.hero-card,.panel{
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:rgba(255,253,249,.82);
  box-shadow:var(--shadow);
  backdrop-filter:blur(18px);
}
.hero-card{padding:24px;display:grid;gap:.65rem;align-content:start;background:linear-gradient(145deg,#fffdf9,#f2e7dc);border-color:rgba(90,30,45,.16)}
.hero-card img{width:72px;height:72px;object-fit:contain;margin-bottom:4px}
.hero-card strong{font-family:var(--font-display);font-size:1.4rem;line-height:1.08;color:var(--burgundy)}
.hero-card span{color:#514b48;line-height:1.6}

.layout{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:34px 0 4rem;display:grid;gap:1rem}
.panel{padding:1.18rem;background:rgba(255,253,249,.9);box-shadow:var(--shadow-soft)}
.timer-panel{border-color:rgba(90,30,45,.2);background:linear-gradient(145deg,#fffdf9,#f7efe8)}
.section-title{display:flex;justify-content:space-between;gap:1rem;align-items:start;margin-bottom:1rem}
.section-title h2{font-family:var(--font-display);color:var(--burgundy);margin:0;font-size:1.45rem;letter-spacing:-.025em}.section-title.compact{margin-bottom:.75rem}
.pill{border:1px solid rgba(90,30,45,.18);background:var(--soft);color:var(--burgundy);font-weight:850;padding:.55rem .8rem;border-radius:999px;margin:0}

.grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.8rem;align-items:end}.grid.four{grid-template-columns:1.6fr 1fr 1fr .65fr}.grid.entry-grid{grid-template-columns:1.5fr 1fr .8fr .8fr .7fr .7fr .6fr}.wide{grid-column:1 / -2}.checkbox{display:flex;align-items:center;gap:.45rem;min-height:48px;color:#514b48}.checkbox input{width:auto;margin:0}.actions{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;justify-content:flex-end}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}

.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1rem}.stat{border:1px solid var(--line);border-radius:24px;padding:1rem;background:linear-gradient(145deg,#fffdf9,#f5ece3);box-shadow:var(--shadow-soft)}.stat small{color:var(--muted);display:block;margin-bottom:.45rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.stat strong{font-family:var(--font-display);font-size:1.35rem;color:var(--burgundy)}
.report{display:grid;gap:.5rem}.report-row{display:flex;justify-content:space-between;gap:1rem;padding:.85rem;border:1px solid var(--line);border-radius:20px;background:#fffdf9}.report-row small,.simple-list small,.muted{color:var(--muted);display:block;margin-top:.2rem}.report-row strong{color:var(--burgundy)}
.burndown-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem;margin:0 0 1rem}.burn-card{background:linear-gradient(145deg,#fffdf9,#f7efe8);border:1px solid rgba(90,30,45,.16);border-radius:24px;padding:1rem;box-shadow:var(--shadow-soft)}.burn-card.burn-low{border-color:rgba(163,33,61,.42)}.burn-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.burn-head strong{color:var(--burgundy);font-family:var(--font-display);font-size:1.05rem}.burn-head small{display:block;color:var(--muted);margin-top:.25rem}.burn-remaining{text-align:right}.burn-remaining span{display:block;font-family:var(--font-display);color:var(--burgundy);font-size:1.7rem;line-height:1}.burn-bar{height:12px;border-radius:999px;background:var(--soft);overflow:hidden;margin:.9rem 0}.burn-bar span{display:block;height:100%;border-radius:999px;background:var(--burgundy)}.mini-chart{width:100%;height:92px;border:1px solid var(--line);border-radius:18px;background:#fffdf9;padding:8px}.mini-chart line{stroke:#eadfd4;stroke-width:2}.mini-chart polyline{fill:none;stroke:var(--burgundy);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.empty-chart{display:grid;place-items:center;color:var(--muted);font-weight:800;font-size:.9rem}

.filters{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:.6rem}.split{display:grid;grid-template-columns:1fr 1.3fr;gap:1rem}.inline-form{display:grid;grid-template-columns:1fr auto auto;gap:.55rem;align-items:end}.stack-form{display:grid;gap:.65rem}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.toggle{display:flex;align-items:center;gap:.45rem;color:var(--muted);font-size:.82rem}.toggle input{width:auto;margin:0}.simple-list{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:.45rem}.simple-list li{display:flex;justify-content:space-between;gap:1rem;border:1px solid var(--line);background:#fffdf9;border-radius:18px;padding:.8rem;box-shadow:0 8px 22px rgba(90,30,45,.06)}.simple-list li.archived-item{opacity:.72;background:#f5ece3}.simple-list li.empty-list{color:var(--muted);font-weight:800}.simple-list span{font-weight:850;color:var(--charcoal)}.item-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;justify-content:flex-end}.item-actions button{min-height:34px;padding:.38rem .62rem;font-size:.78rem}

.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:22px;background:#fffdf9}table{width:100%;border-collapse:collapse;min-width:950px}th,td{text-align:left;padding:.78rem .7rem;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--burgundy);font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;background:#f7efe8}td{color:#514b48}tbody tr:last-child td{border-bottom:0}td.notes{color:var(--muted);max-width:240px}.row-actions{white-space:nowrap}.row-actions button{padding:.45rem .65rem;margin-left:.3rem;font-size:.82rem;min-height:36px}.empty{text-align:center;color:var(--muted);padding:2rem}

.sync-status{margin:.2rem 0 1rem;color:var(--muted);font-size:.86rem;font-weight:700}.sync-status::before{content:'●';color:var(--burgundy);margin-right:.4rem}.sync-status.error{color:var(--danger)}.sync-status.error::before{color:var(--danger)}

.toast{position:fixed;right:1rem;bottom:1rem;opacity:0;transform:translateY(10px);pointer-events:none;border:1px solid var(--line);border-radius:20px;padding:.9rem 1rem;background:#fffdf9;box-shadow:var(--shadow);color:var(--charcoal);max-width:360px;transition:opacity .2s ease,transform .2s ease}.toast.show{opacity:1;transform:translateY(0)}.toast.error{border-color:rgba(163,33,61,.55);color:var(--danger)}

@media(max-width:1000px){.hero,.split,.section-title{grid-template-columns:1fr;display:grid}.grid,.grid.four,.grid.entry-grid,.stats,.filters{grid-template-columns:1fr}.wide{grid-column:auto}.actions{justify-content:flex-start}.hero{padding-top:34px}.topbar{min-height:78px}.brand-logo{width:min(272px,62vw)}}
@media(max-width:680px){.topbar,.hero,.layout{width:calc(100vw - 28px);max-width:calc(100vw - 28px)}.topbar{align-items:flex-start;flex-direction:column;gap:10px;padding:16px 0}.topbar-note{font-size:10px}.hero{padding:28px 0 48px}.hero h1{font-size:46px}.panel{padding:1rem;border-radius:24px}.two-cols{grid-template-columns:1fr}.inline-form{grid-template-columns:1fr}.section-title h2{font-size:1.28rem}}
