:root{
--pine:#15392f;--forest:#385f53;--sage:#7a8f7b;--red:#c44d3a;--stone:#efe8da;--paper:#f8f2e7;--ink:#1b2f2b;--line:#d5cdbf;--muted:#6c756f
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--stone);color:var(--ink)}
body{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif;padding-bottom:78px;-webkit-font-smoothing:antialiased}
button,input,textarea{font:inherit;color:inherit}
button{cursor:pointer}
.app-top{height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 22px 0;background:var(--pine);color:white;display:flex;align-items:center;justify-content:space-between}
.status-title{font-family:Georgia,serif;font-size:18px;letter-spacing:.12em;font-weight:700}
.top-icon{border:0;background:none;color:white;font-size:24px}
main{max-width:680px;margin:auto}
.view{display:none}.view.active{display:block}
.hero-wrap{background:var(--paper);padding:0 0 4px;overflow:hidden}
.hero-art{width:100%;display:block;aspect-ratio:325/310;object-fit:cover;object-position:center top}
.home-actions{background:var(--paper);padding:14px 21px 4px;display:grid;gap:10px}
.button{height:52px;border-radius:4px;font-weight:800;letter-spacing:.05em;font-size:15px}
.primary{border:1px solid var(--pine);background:var(--pine);color:white}
.outline{border:1px solid var(--pine);background:transparent;color:var(--pine)}
.totals-card{margin:16px 21px;padding:15px;background:rgba(248,242,231,.85);border:1px solid var(--line);border-radius:7px}
.micro-title{text-align:center;font-size:9px;font-weight:800;letter-spacing:.11em}
.totals-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:12px}
.totals-grid>div{text-align:center;border-right:1px solid var(--line)}.totals-grid>div:last-child{border:0}
.mini-icon{font-size:18px;height:21px}.totals-grid strong{display:block;font-family:Georgia,serif;font-size:20px}.totals-grid span{display:block;font-size:7px;font-weight:800;margin-top:2px}
.patterns-wrap{padding:5px 21px 24px}
.section-heading{display:flex;align-items:end;justify-content:space-between;margin:12px 0 8px}
.section-heading h2{font-family:Georgia,serif;font-size:20px;margin:0}.section-heading p{margin:2px 0 0;color:var(--muted);font-size:9px}
.link-button,.header-action{border:0;background:none;color:var(--pine);font-weight:700;font-size:12px}
.pattern-stack{border:1px solid var(--line);border-radius:7px;background:var(--paper);overflow:hidden}
.pattern-row{padding:14px 15px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.pattern-row:last-child{border:0}
.pattern-row span{display:block;font-size:8px;font-weight:800;color:var(--muted)}.pattern-row strong{display:block;font-family:Georgia,serif;font-size:17px;margin:4px 0 2px}.pattern-row small{color:var(--muted);font-size:9px}
.pattern-mark{font-size:26px;color:var(--pine)}.lure-mark{color:var(--red)}
.screen-header{height:58px;background:var(--pine);color:white;display:grid;grid-template-columns:70px 1fr 70px;align-items:center;padding:0 10px}
.screen-header strong{text-align:center;font-size:13px;letter-spacing:.06em}.screen-header .header-action{color:white}.back{border:0;background:none;color:white;font-size:31px;text-align:left}
.search-shell{margin:14px 18px 0;border:1px solid var(--line);background:var(--paper);border-radius:6px;padding:10px 12px;color:var(--muted);display:flex;gap:8px;align-items:center}
.search-shell input{width:100%;border:0;background:transparent;outline:0;font-size:14px}
.trip-list{padding:12px 18px;display:grid;gap:8px}
.trip-card{background:var(--paper);border:1px solid var(--line);border-radius:5px;padding:12px;text-align:left;display:grid;grid-template-columns:1fr auto;gap:3px 10px}
.place{font-family:Georgia,serif;font-size:17px;font-weight:700}.date{font-size:9px;color:var(--muted)}.fish-count{font-family:Georgia,serif;font-size:20px}.fish-count small{display:block;font-family:inherit;font-size:7px;color:var(--muted);text-align:right}
.trip-meta{grid-column:1/-1;border-top:1px solid var(--line);margin-top:7px;padding-top:7px;font-size:9px;color:var(--muted)}
.empty{text-align:center;margin:18px;padding:28px}.empty h2{font-family:Georgia,serif}.empty p{color:var(--muted);font-size:12px}
form{padding:16px 18px;background:var(--paper);display:grid;gap:14px}
label{font-size:9px;font-weight:800;letter-spacing:.04em}label em{font-weight:400;color:var(--muted)}
.input-shell,.rod-control,.unit-shell{margin-top:6px;border:1px solid var(--line);border-radius:5px;background:#fbf8f0;display:flex;align-items:center;min-height:44px}
.input-shell>span,.rod-icon{width:36px;text-align:center}
input,textarea{font-size:15px;background:transparent}
.input-shell input{border:0;outline:0;flex:1;padding:11px 8px 11px 0;min-width:0}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.rod-control button{width:42px;height:42px;border:0;background:transparent;font-size:18px}.rod-control input{flex:1;border:0;text-align:center;outline:0;min-width:0}
.metric-control{margin-top:6px;border-top:1px solid var(--line);padding-top:8px;text-align:center}.metric-symbol{font-size:20px}.metric-control input{width:60px;border:0;outline:0;text-align:center;font:22px Georgia,serif}.plusminus{display:flex;justify-content:space-between}.plusminus button{border:0;background:none;font-size:18px}
.metric-boxes{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:11px 0}
.unit-shell{border:0;background:transparent;justify-content:center}.unit-shell input{width:60px;border:0;outline:0;text-align:center;font:21px Georgia,serif}.unit-shell b{font-size:10px;margin-left:3px}
textarea{margin-top:6px;width:100%;border:1px solid var(--line);border-radius:5px;background:#fbf8f0;padding:11px;resize:vertical;outline:0}
.delete{border:0;background:none;color:#9c3a30;padding:10px;font-size:11px;font-weight:800}.hidden{display:none!important}
.summary{margin:14px 18px}.summary-title{font-family:Georgia,serif;font-size:23px;margin:0 0 2px}.summary-date{color:var(--muted);font-size:9px}
.summary-metrics{margin-top:14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr)}.summary-metrics div{text-align:center;padding:11px 3px}.summary-metrics span{display:block;font-size:7px;color:var(--muted)}.summary-metrics b{font-family:Georgia,serif;font-size:16px}
.summary-details{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.summary-details div{padding:12px 4px}.summary-details span{display:block;font-size:8px;color:var(--muted)}.summary-details b{font-family:Georgia,serif;font-size:15px}.notes-box{padding:13px 4px}.notes-box span{font-size:8px;font-weight:800}.notes-box p{font-size:11px;line-height:1.4}
.tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:13px 14px;background:var(--paper)}.tabs button{border:0;background:none;font-size:7px;font-weight:800;padding:8px 4px}.tabs button.active{background:var(--pine);color:white;border-radius:4px}
.stats-panel{margin:0 18px 18px;padding:15px;border:1px solid var(--line);background:var(--paper);border-radius:5px}.stats-panel h3{font-size:10px;margin:0}.stats-panel>p{font-size:9px;color:var(--muted);margin:3px 0 7px}
.stat-row{padding:13px 0;border-bottom:1px solid var(--line)}.stat-row:last-child{border:0}.stat-row span{display:block;font-size:8px;color:var(--muted)}.stat-row strong{display:block;font-family:Georgia,serif;font-size:17px;margin:3px 0}.stat-row small{color:var(--muted);font-size:9px}
.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(680px,100%);height:76px;padding-bottom:env(safe-area-inset-bottom);background:var(--pine);display:grid;grid-template-columns:repeat(5,1fr);align-items:center;z-index:20}
.bottom-nav button{border:0;background:none;color:#efece2;font-size:18px}.bottom-nav small{display:block;font-size:8px;margin-top:2px}
#toast{position:fixed;left:50%;bottom:88px;transform:translateX(-50%);opacity:0;background:var(--pine);color:white;padding:9px 14px;border-radius:18px;font-size:11px;transition:.2s;z-index:30}.show{opacity:1!important}
@media(max-width:375px){.hero-art{aspect-ratio:325/285}.two-col{grid-template-columns:1fr 1fr}}

.emoji-symbol{font-family:Apple Color Emoji,"Segoe UI Emoji",sans-serif;font-size:25px;line-height:1.1}.emoji-mini{font-family:Apple Color Emoji,"Segoe UI Emoji",sans-serif;font-size:17px}
