*{box-sizing:border-box} [hidden]{display:none!important} body{margin:0;background:#eef3f6;color:#15374e;font:17px system-ui,-apple-system,sans-serif}header{display:flex;align-items:center;gap:10px;background:#09263d;color:white;padding:calc(12px + env(safe-area-inset-top)) 15px 12px;max-width:850px;margin:auto}h1{font-size:25px;letter-spacing:.15em;margin:0;flex:1}main{max-width:850px;margin:auto;padding:12px 12px calc(20px + env(safe-area-inset-bottom))}.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.tile{border:0;border-radius:14px;min-height:116px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 4px;text-align:center;color:white}.tile strong{font-size:14px;line-height:1.15}.tile small{font-size:10px;color:#d4e5ef}.tile:disabled{opacity:.67;cursor:default}.symbol{font-size:34px;line-height:1;display:block}.blue{background:#1465a2}.slate{background:#34546c}.teal{background:#087e89}.navy{background:#365f91}.green{background:#278052}.red{background:#a53636}.violet{background:#6f5097}.gold{background:#927237}.foot,.hint{font-size:12px;color:#526778;line-height:1.4}.foot{text-align:center}button,input{font:inherit}button{cursor:pointer;min-height:44px}button:focus-visible,input:focus-visible{outline:3px solid #e5b86b;outline-offset:2px}#night{background:transparent;color:white;border:1px solid #8fa7b9;border-radius:12px;width:44px;font-size:25px}.card{background:white;border:1px solid #c8dce7;border-radius:15px;padding:14px}.card h2{font-size:24px}.card h3{font-size:18px;margin:14px 0 8px}label{font-weight:700;display:block;margin:14px 0 6px}input{width:100%;padding:12px;border:1px solid #9fb9ca;border-radius:9px;background:white;color:#143b56}.primary,.secondary{border:1px solid #b7d6e7;border-radius:9px;padding:10px 14px;font-weight:700;background:#e7f2f8;color:#143b56}.primary{background:#1465a2;color:white;border-color:#1465a2}.tides-actions{display:grid;grid-template-columns:2fr 1fr;gap:8px;margin:8px 0}.tides-official{margin-top:16px}.tides-gauge{padding:12px;background:#e7f2f8;border-radius:10px;margin:10px 0}.tide-event{display:grid;grid-template-columns:1fr 1fr 1fr;gap:5px;padding:7px 0;border-bottom:1px solid #c8dce7}.tides-link{color:#1465a2;display:inline-block;margin:8px 0}details{margin:12px 0}summary{cursor:pointer;font-weight:700;padding:8px 0}#tidesDoneBottom{width:100%}#tidesTabIcon[data-mode=daily]{font-size:12px;display:grid;grid-template-columns:repeat(2,1fr);gap:5px;width:100%;max-width:130px}.tide-icon-event{display:flex;gap:3px;justify-content:center;white-space:nowrap}.tide-icon-event b{color:#b3e5ff}.tides-tile-arrow,.tides-tile-height{font-size:20px;display:inline-block;margin:0 2px}.night{background:#071a25;color:#c3d9e4}.night .card{background:#122c3a;color:#e2edf2;border-color:#315465}.night .foot,.night .hint{color:#b5cbd8}.night .tides-link{color:#9dd8ff}.night .tile{filter:brightness(.72)}.night #tidesPanel .tc-card{filter:brightness(.8)}@media(min-width:650px){.tile{min-height:140px}.tile strong{font-size:18px}}
.sk-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.sk-head h2{margin:0}.sk-warning{font-size:13px;line-height:1.4;background:#fff4d9;border-left:4px solid #c18b2d;padding:9px;color:#553b0e}.sk-tool select{display:block;width:100%;min-height:44px;border:1px solid #9fb9ca;border-radius:9px;padding:8px;background:white;color:#143b56;font:inherit}.sk-pair,.sk-actions,.sk-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sk-actions{margin:14px 0}.sk-source{font-size:12px;line-height:1.4;margin-top:5px;color:#526778}.sk-result{background:#e7f2f8;border-radius:10px;padding:10px;color:#143b56;min-width:0}.sk-result strong{display:block;font-size:25px;line-height:1.2}.sk-result span{font-size:12px}.sk-error{padding:10px;color:#922b24;background:#fff0eb;border-radius:8px}.sk-vector{max-width:320px;width:100%;height:auto;display:block;margin:10px auto}.night .sk-warning{background:#3d3020;color:#f1d9a4}.night .sk-source{color:#b5cbd8}.sk-tool a{color:#1765a2}.night .sk-tool a{color:#9dd8ff} #navSwap{margin-top:8px}