:root{--accent:#0a5;--accent-strong:#084;--text:#1a1a1a;--muted:#666;--soft:#888;--line:#e5e5e5;--line-strong:#ccc;--bg:#f7f7f7;--panel:#ffffff;--error:#b00020;--success:#0a5;color-scheme:light}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px;line-height:1.45;min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:inherit}h1{font-size:1.5rem;margin:0;line-height:1.25}h1,h2{font-weight:600}h2{font-size:1rem}h2,p{margin:0 0 .5rem}li,p{font-size:.9rem;line-height:1.45}input,select,textarea{font:inherit;width:100%;padding:.55rem .7rem;border:1px solid var(--line-strong);border-radius:6px;background:white;color:var(--text);box-sizing:border-box}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}label{display:block;font-size:.85rem;margin-bottom:.7rem}label>input,label>select,label>textarea{margin-top:.25rem}.muted{color:var(--muted);font-size:.85rem}.page-shell{width:min(1100px,calc(100% - 24px));margin:0 auto;padding:16px 0 80px}.mobile-shell{width:min(100%,620px);margin:0 auto;padding:14px 14px 80px}.admin-section,.card,.hero,.mobile-card,.mobile-hero,.trace-header{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin-bottom:14px}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:12px;gap:12px}.actions,.section-heading{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.section-heading{justify-content:space-between;margin-bottom:8px}.entry-link,.primary-link,.secondary-link{display:inline-block;padding:8px 12px;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer}.primary-link{background:var(--accent);color:white;border:1px solid var(--accent)}.entry-link,.secondary-link{background:white;color:var(--text);border:1px solid var(--line-strong)}.button-reset,.mobile-submit{width:100%;background:var(--accent);color:white;border:1px solid var(--accent);padding:10px 14px;border-radius:8px;font-weight:600;cursor:pointer;font-size:.95rem}.button-reset:disabled,.mobile-submit:disabled{opacity:.55;cursor:not-allowed}.form-message{margin-top:10px;padding:8px 12px;border-radius:6px;font-size:.85rem}.form-message.success{background:#e8f6ee;color:var(--success);border:1px solid #cde5d9}.form-message.error{background:#fdecef;color:var(--error);border:1px solid #f5c6cd}.buyer-login-form,.catch-form,.fisher-form{display:flex;flex-direction:column;gap:.5rem}.admin-summary-error,.company-points,.entry-cards,.eyebrow,.home-hero,.intro-cards,.lead,.locale-switch,.mobile-chip-list,.mobile-footer .muted,.roadmap,.section-heading .muted{display:none!important}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:none;background:white;border-top:1px solid var(--line);z-index:100;padding-bottom:env(safe-area-inset-bottom,0)}.bottom-nav-inner{max-width:620px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 4px;font-size:.7rem;color:var(--muted)}.bottom-nav a.active{color:var(--accent)}.bottom-nav svg{width:22px;height:22px}@media (max-width:768px){.bottom-nav{display:block}body{padding-bottom:64px}}.toast{position:fixed;top:12px;left:50%;transform:translateX(-50%);background:var(--success);color:white;padding:10px 16px;border-radius:8px;font-size:.9rem;font-weight:600;box-shadow:0 4px 12px rgba(0,0,0,.15);z-index:200;animation:toast-fade 3s ease forwards}.toast.error{background:var(--error)}@keyframes toast-fade{0%{opacity:0;transform:translate(-50%,-10px)}10%,80%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-10px)}}a,button{transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .05s ease,box-shadow .15s ease}.button-reset:hover,.mobile-submit:hover,.primary-link:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.entry-link:hover,.secondary-link:hover{background:#f7f7f7}.button-reset:active,.entry-link:active,.mobile-submit:active,.primary-link:active,.secondary-link:active{transform:translateY(1px)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.bottom-nav a{transition:color .15s ease}@keyframes skel-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}@media print{.bottom-nav,.no-print,.toast{display:none!important}body{background:white!important;padding:0!important}@page{margin:12mm}a{color:black!important;text-decoration:none!important}}