/* DiveScanner account / sign-in / saved-favourites styles.
   Shared by the homepage (inline copy) and content pages (via article-header.js).
   Self-contained: defines the teal/navy tokens so it works anywhere. */
:root{--teal:#42f5e6;--teal-h:#24d9cf;--teal-b:#8fe9df;--navy:#0d3d6b}
.nav-saved{font-size:13px;color:#062f3a;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:4px}
.nav-saved::before{content:"\2665";color:var(--teal);font-size:14px}
.nav-saved:hover{color:#0d3d6b}
.saved-count{color:#5b6b7f;font-weight:700}
.save-heart{background:none;border:none;cursor:pointer;padding:4px;line-height:0;flex:0 0 auto;-webkit-tap-highlight-color:transparent}
.save-heart svg{width:22px;height:22px;fill:none;stroke:#9aa7b6;stroke-width:2;transition:fill .12s,stroke .12s,transform .1s}
.save-heart:hover svg{stroke:var(--teal)}
.save-heart:active svg{transform:scale(.86)}
.save-heart.is-saved svg{fill:var(--teal);stroke:var(--teal)}
.fav-pop{position:absolute;z-index:180;background:#fff;border:1px solid #e6eaf0;border-radius:12px;box-shadow:0 12px 32px rgba(6,22,40,.18);padding:8px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:230px}
.fav-pop-lab{font-size:12px;font-weight:800;color:#0e8f83;padding:0 2px}
.fav-chip{font-family:inherit;font-size:12.5px;font-weight:700;color:#0d3d6b;background:#eef7ff;border:1px solid #d5e6f5;border-radius:999px;padding:6px 12px;cursor:pointer;transition:all .12s}
.fav-chip:hover{border-color:var(--teal-b)}
.fav-chip.on{background:var(--teal);border-color:var(--teal);color:#062f3a}
.saved-empty{color:#5b6b7f;font-size:14px;text-align:center;padding:18px 4px}
.saved-group{margin-bottom:14px}
.saved-group-h{font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:#8a97a6;margin:6px 2px 2px}
.saved-item-name{color:#062f3a;text-decoration:none}
a.saved-item-name:hover{color:#0d3d6b;text-decoration:underline}
.saved-item{display:flex;align-items:center;gap:10px;padding:11px 2px;border-bottom:1px solid #eef1f5}
.saved-item:last-child{border-bottom:none}
.saved-item-main{flex:1;min-width:0}
.saved-item-name{font-weight:700;color:#062f3a;font-size:14.5px}
.saved-item-meta{font-size:12.5px;color:#5b6b7f;margin-top:2px}
.saved-remove{background:none;border:none;color:#b6c0cc;font-size:20px;line-height:1;cursor:pointer;padding:2px 6px;flex:0 0 auto}
.saved-remove:hover{color:#e0245e}
.saved-scroll{max-height:60vh;overflow-y:auto;margin-top:6px}
.nav-signin{font-family:inherit;font-size:13px;font-weight:700;color:#062f3a;background:var(--teal);border:none;border-radius:999px;padding:9px 18px;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:background .15s,transform .05s}
.nav-signin:hover{background:var(--teal-h)}
.nav-signin:active{transform:translateY(1px)}
.nav-signin .ti{font-size:16px}
.nav-account{position:relative}
.nav-account-btn{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;padding:4px 6px;font-family:inherit;border-radius:999px;transition:background .12s}
.nav-account-btn:hover{background:#f1f4f8}
.nav-avatar{width:30px;height:30px;border-radius:50%;background:#0d3d6b;background-size:cover;background-position:center;color:#fff;font-size:13px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.nav-uname{font-size:13px;font-weight:700;color:#062f3a}
.nav-caret{font-size:15px;color:#8a97a6;transition:transform .15s}
.nav-account-btn[aria-expanded="true"] .nav-caret{transform:rotate(180deg)}
.nav-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:230px;background:#fff;border:1px solid #e6eaf0;border-radius:14px;box-shadow:0 14px 40px rgba(6,22,40,.18);padding:8px;z-index:150}
.nav-menu-head{display:flex;align-items:center;gap:10px;padding:8px 10px 12px;border-bottom:1px solid #eef1f5;margin-bottom:6px}
.nav-avatar-lg{width:38px;height:38px;font-size:15px}
.nav-menu-id{min-width:0}
.nav-menu-name{font-size:14px;font-weight:700;color:#062f3a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-menu-email{font-size:12px;color:#8a97a6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-menu-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:none;cursor:pointer;font-family:inherit;font-size:14px;font-weight:700;color:#0b1b2b;padding:11px 10px;border-radius:9px;transition:background .12s}
.nav-menu-item:hover{background:#f4f6f8}
.nav-menu-item .saved-count{color:#5b6b7f;font-weight:700;margin-left:auto}
.nmi-ico{width:18px;height:18px;flex:0 0 auto;fill:var(--teal);stroke:none}
.nmi-ico.nmi-stroke{fill:none;stroke:#5b6b7f;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.auth-overlay[hidden]{display:none}
.auth-overlay{position:fixed;inset:0;z-index:200;background:rgba(6,22,40,.55);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:20px}
.auth-card{background:#fff;width:100%;max-width:400px;border-radius:18px;padding:30px 28px 26px;box-shadow:0 24px 60px rgba(6,22,40,.28);position:relative}
.auth-x{position:absolute;top:14px;right:16px;background:none;border:none;font-size:22px;line-height:1;color:#9aa7b6;cursor:pointer}
.auth-x:hover{color:#062f3a}
.auth-card h2{font-family:'Space Grotesk',sans-serif;font-size:23px;font-weight:600;color:#062f3a;margin:0 0 4px;letter-spacing:-.4px}
.auth-lead{font-size:13.5px;color:#5b6b7f;margin:0 0 20px}
.auth-google{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;font-family:inherit;font-size:14.5px;font-weight:700;color:#1f2937;background:#fff;border:1px solid #dfe5ec;border-radius:11px;padding:12px;cursor:pointer;transition:background .15s}
.auth-google:hover{background:#f6f8fb}
.auth-google svg{width:18px;height:18px}
.auth-or{display:flex;align-items:center;gap:12px;color:#9aa7b6;font-size:12px;margin:16px 0}
.auth-or::before,.auth-or::after{content:"";flex:1;height:1px;background:#e6eaf0}
.auth-field{margin-bottom:12px}
.auth-field label{display:block;font-size:12px;font-weight:700;color:#42526b;margin-bottom:5px}
.auth-field input{width:100%;font-family:inherit;font-size:15px;color:#062f3a;border:1px solid #dfe5ec;border-radius:11px;padding:12px 13px;background:#fbfcfd;transition:border-color .15s}
.auth-field input:focus{outline:none;border-color:#31ddd3;background:#fff}
.auth-submit{width:100%;font-family:inherit;font-size:15px;font-weight:700;color:#fff;background:#062f3a;border:none;border-radius:11px;padding:13px;cursor:pointer;margin-top:4px;transition:background .15s}
.auth-submit:hover{background:#0d3d6b}
.auth-submit:disabled{opacity:.6;cursor:default}
.auth-forgot{background:none;border:none;color:#5b6b7f;font-family:inherit;font-size:12.5px;cursor:pointer;padding:10px 0 0;display:block;margin:0 auto}
.auth-forgot:hover{color:#0d3d6b;text-decoration:underline}
.auth-toggle{text-align:center;font-size:13px;color:#5b6b7f;margin-top:18px;padding-top:16px;border-top:1px solid #eef1f5}
.auth-link{background:none;border:none;color:#0d3d6b;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;padding:0}
.auth-link:hover{text-decoration:underline}
.auth-err{background:#fdecec;color:#a12525;font-size:13px;border-radius:9px;padding:9px 12px;margin-bottom:14px}
body.auth-open{overflow:hidden}
/* Article "Save" pill (added under the article h1 by article-header.js). */
.ds-save{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1.5px solid #dbe4ec;border-radius:999px;padding:6px 14px 6px 10px;font-size:13px;font-weight:800;color:#0b1b2b;cursor:pointer;margin:2px 0 12px}
.ds-save .save-heart{padding:0}
.ds-save .save-heart svg{width:18px;height:18px}
.ds-save.on{background:#e7fff9;border-color:#8fe9df}
.ds-save-lbl{line-height:1}
