:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--max-width:680px;--ad-height:66px}
*{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;color:var(--text);background:var(--bg);touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button,a{-webkit-touch-callout:none}button{cursor:pointer}button,input,select,textarea,.file-button{border:1px solid var(--border);border-radius:var(--radius-button);padding:11px 13px;min-height:46px;color:var(--text);background:var(--surface)}button:active{background:var(--surface-strong)}input,select,textarea{width:100%;min-width:0;font-size:16px}textarea{resize:vertical;line-height:1.7}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}a{color:var(--accent)}[hidden]{display:none!important}.app-shell{width:min(100%,var(--max-width));margin:auto;min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) calc(var(--ad-height) + max(28px,env(safe-area-inset-bottom))) max(16px,env(safe-area-inset-left))}.app-header{padding:12px 2px 24px}.brand{margin:0 0 12px;color:var(--accent);font-size:.75rem;letter-spacing:.12em;font-weight:700}.brand span{margin-left:12px;font-weight:400;letter-spacing:.04em}h1{margin:0;font-size:clamp(1.5rem,6.6vw,2.15rem);letter-spacing:.03em;line-height:1.4}h1,h2,h3,p{overflow-wrap:anywhere}.subtitle,.muted,.panel-description{color:#706b61}.subtitle{font-size:.9rem;margin:8px 0 0}.tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:5px;border:1px solid var(--border);border-radius:18px;background:var(--surface-strong)}.tabs button{padding:10px 0;background:transparent;border:0;font-size:.88rem}.tabs button[aria-current]{background:var(--surface);color:#80502f;box-shadow:0 2px 8px #2b2b2610;font-weight:700}.tool-panel{padding:22px 18px;border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--surface);box-shadow:0 5px 20px #2b2b2606;margin-bottom:16px}h2{font-size:1.15rem;margin:0}h3{font-size:1rem;margin:20px 0 12px}.eyebrow{font-size:.75rem;color:#80502f;letter-spacing:.12em;margin:0 0 10px}.panel-description{line-height:1.7;font-size:.9rem;margin:10px 0 20px}.status-message{min-height:1.4em;margin:12px 4px;font-size:.88rem;color:#80502f}.status-message.error{color:#a03737}label,legend{display:block;font-size:.9rem;font-weight:600;margin:16px 0 8px}fieldset{padding:0;margin:16px 0;border:0}legend{padding:0;margin:0 0 10px}legend span{font-weight:400;font-size:.78rem}.inline{display:flex;align-items:center;gap:8px}.inline>*{min-width:0}.inline input,.inline>div{flex:1}.inline button{flex-shrink:0}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}.chip{padding:9px 13px;font-size:.9rem;border-radius:24px;max-width:100%;overflow-wrap:anywhere;background:var(--bg)}.chip[aria-pressed="true"]{background:#f2e4d5;color:#754629;border-color:#cfa985}.primary-button{background:var(--accent);color:#fff;border:0;font-weight:700;min-height:50px}.primary-button:active{background:var(--accent-active)}.actions{display:flex;gap:8px;margin:20px 0 0}.actions .primary-button{flex:1}.small{font-size:.8rem;line-height:1.7}.filters>button{margin-top:12px}.day-heading{font-size:.95rem;margin:24px 4px 12px;color:#706b61}.entry{border:1px solid var(--border);border-radius:20px;background:#fff;padding:18px;margin:10px 0}.entry .names{font-size:.82rem;color:#80502f;margin:0 0 8px}.entry .body{white-space:pre-wrap;line-height:1.8;margin:0}.entry .actions{justify-content:flex-end;margin-top:12px}.entry .actions button{font-size:.8rem;min-height:44px}.danger{color:#a03737}.empty{text-align:center;padding:28px 12px;color:#706b61;line-height:1.8}.month-nav{display:flex;gap:8px;align-items:center;margin-top:20px}.month-nav input{flex:1;text-align:center}.month-nav button{font-size:1.4rem;min-width:46px}.summary{display:flex;gap:12px;margin:18px 0}.summary>div{flex:1;padding:14px;text-align:center;background:var(--bg);border-radius:16px;font-size:.8rem;color:#706b61}.summary strong{display:block;color:#80502f;font-size:1.65rem;margin-bottom:4px}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.weekday{text-align:center;font-size:.73rem;color:#706b61;padding:8px 0}.calendar button{padding:6px 0;min-height:53px;border-radius:12px;border-color:transparent;background:var(--bg);font-size:.85rem}.calendar button.has-entry{background:#f2e4d5;color:#754629}.calendar small{display:block;font-size:.62rem;min-height:13px}.calendar button.today{border-color:#b67849}.calendar button:disabled{color:#706b61;cursor:default}.chart-panel h3{margin-top:0}.bar-row{display:grid;grid-template-columns:90px 1fr 40px;gap:8px;align-items:center;margin:10px 0;font-size:.8rem}.bar-label{overflow-wrap:anywhere}.bar-track{height:12px;background:var(--surface-strong);border-radius:8px;overflow:hidden}.bar-fill{height:100%;background:#c79570;border-radius:8px}.bar-value{text-align:right;font-variant-numeric:tabular-nums}.vertical-chart{display:flex;gap:4px;overflow-x:auto;padding:6px 0 10px;min-height:155px;align-items:flex-end}.vertical-item{min-width:26px;flex:1;text-align:center;font-size:.63rem;color:#706b61}.vertical-track{height:104px;display:flex;align-items:flex-end;background:var(--bg);border-radius:5px;margin:5px 0}.vertical-fill{background:#c79570;width:100%;border-radius:5px;min-height:0}.manager-row{display:flex;gap:6px;align-items:center;margin:12px 0;flex-wrap:wrap}.manager-row input{flex:1;min-width:120px}.manager-row button{font-size:.8rem}.file-button{display:block;text-align:center;font-weight:400;cursor:pointer}.tool-panel>#export{width:100%}.site-footer{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;padding:18px 0 10px;align-items:center;font-size:.8rem}.site-footer a{padding:12px 4px;color:#706b61;text-decoration:none}.mrs-tools-link{font-weight:700}.ad-banner{position:fixed;z-index:20;bottom:0;left:0;right:0;min-height:calc(var(--ad-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--border);background:var(--ad-bg)}.ad-banner-inner{height:var(--ad-height);width:min(100%,var(--max-width));margin:auto;display:flex;align-items:center;justify-content:center;padding:8px 16px}.ad-placeholder{color:var(--ad-placeholder);font-size:.75rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}body.keyboard-open .ad-banner{visibility:hidden}@media(min-width:700px){.tool-panel{padding:26px}.app-shell{padding-top:32px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
