﻿:root {
 --bg:#121316;
 --surface:#24252a;
 --bronze:#c59a65;
 --text:#f4f1ed;
 --muted:#a5a5ac;
}
html {
 min-height:100%;
 background:var(--bg);
}
body {
 background:var(--bg);
 color:var(--text);
 font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 -webkit-font-smoothing:antialiased;
}
header {
 position:sticky;
 top:0;
 z-index:20;
 background:rgba(18,19,22,.96);
 backdrop-filter:blur(16px);
 border-bottom:1px solid #36322e;
 padding:calc(15px + env(safe-area-inset-top)) 20px 15px;
 letter-spacing:1.5px;
}
main {
 max-width:720px;
 margin:auto;
 padding:20px 16px calc(115px + env(safe-area-inset-bottom));
}
h2 {color:var(--bronze);font-size:23px}
h3 {font-size:17px}
.card {
 background:var(--surface);
 border:1px solid #34353a;
 border-radius:20px;
 padding:18px;
 box-shadow:0 5px 18px rgba(0,0,0,.12);
 overflow-wrap:anywhere;
}
button {
 min-height:44px;
 transition:background .15s;
}
button:active {opacity:.8}
input,textarea,select {
 font-family:inherit;
 font-size:16px!important;
 min-height:44px;
 max-width:100%;
}
textarea {min-height:95px}
input[type=checkbox] {
 width:20px;
 min-height:20px;
 height:20px;
 accent-color:var(--bronze);
 vertical-align:middle;
}
label {line-height:1.5}
.grid {gap:12px}
.grid button {
 background:#292a30;
 color:#eac99f;
 border:1px solid #5b4935;
 border-radius:16px;
 padding:16px;
 line-height:1.4;
}
.nexus-dashboard-grid h3 {
 overflow-wrap:anywhere;
}
nav {
 position:fixed;
 bottom:0;
 left:0;
 right:0;
 z-index:100;
 display:grid!important;
 grid-template-columns:repeat(5,minmax(0,1fr));
 gap:0!important;
 background:rgba(30,31,36,.98);
 border-top:1px solid #4a3b2c;
 padding:8px 5px calc(9px + env(safe-area-inset-bottom));
 backdrop-filter:blur(18px);
}
nav button {
 display:flex;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 gap:4px;
 background:transparent;
 color:#aaa9aa;
 border:0;
 border-radius:12px;
 font-size:11px!important;
 font-weight:600;
 padding:6px 2px!important;
 min-height:55px;
}
nav button.active {color:#e6bc83}
nav button .nav-icon {font-size:22px;line-height:1}
nav button.nav-add .nav-icon {
 display:grid;
 place-items:center;
 width:39px;
 height:39px;
 border-radius:14px;
 background:var(--bronze);
 color:#121316;
 font-size:28px;
 margin-top:-13px;
}
@media(max-width:380px) {
 main {padding-left:12px;padding-right:12px}
 .card {padding:14px}
 .nexus-dashboard-grid {gap:8px}
 .nexus-calendar-grid {gap:3px}
 .nexus-day {min-height:43px}
}
@media print {
 nav,header {display:none!important}
 main {padding:0}
}
