/* One warm, legible visual language across the sea and visitors. */
.v4-friend,.v4-sea{font-family:Maplestory,sans-serif;font-weight:700;color:#285c57}
.v4-friend button,.v4-sea button,.v4-sea input{font-family:Maplestory,sans-serif;font-weight:700;border-width:2px}
.v4-friend-title{padding:0;background:none;border:0;box-shadow:none}.v4-friend-title img{width:202px;display:block}.v4-friend-title h1{font-size:17px;margin:3px 0;padding:6px 12px;display:inline-block;background:#fff9e7;border:2px solid #fff;border-radius:13px;color:#346660}
.v4-friend-header nav button{font-size:15px;padding:12px 17px}.v4-friend-welcome{top:148px;border:2px solid #fff9e4;background:#fffbecf2}.v4-friend-welcome strong{font-size:19px}.v4-friend-welcome p{font-size:15px;color:#476e5e}.v4-friend-welcome button{font-size:14px;min-height:44px}
.v4-friend-controls,.v4-sea-tools{display:flex;align-items:center;gap:7px;padding:8px;background:#fffaf0cf;border:2px solid #fff9ea;border-radius:22px;box-shadow:0 7px 20px #376b6530}
.v4-friend-controls button,.v4-sea-tools button{display:grid;place-items:center;width:46px;height:46px;min-width:46px;padding:10px;border:2px solid #d9dfc7;background:#fffcf2;border-radius:14px;color:#32635e}.v4-sea-tools button:first-child{width:auto}.v4-friend-controls svg,.v4-sea-tools svg{width:24px;height:24px;display:block}.v4-friend-controls .v4-sound,.v4-sea-tools .v4-sound{background:#e1f5ed;border-color:#acd6c4}
.v4-friend-interact{position:absolute;left:0;top:0;bottom:auto;display:flex;flex-direction:column;align-items:center;gap:3px;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;max-width:none;min-height:0!important;width:max-content;transition:none;will-change:transform}.v4-friend-interact img{width:61px;height:64px;filter:drop-shadow(0 4px 5px #56472528)}.v4-friend-interact strong{font-size:15px;color:#31564c;padding:6px 12px;background:#fffbea;border:2px solid white;border-radius:12px;box-shadow:0 3px 0 #769b6930}
.v4-friend-pin{left:0;top:0;will-change:transform;font-size:15px;border:2px solid #fff}.v4-friend-growth{border:2px solid #fff7e0}.v4-friend-growth small{font-size:14px;color:#577657}.v4-friend-growth h2{font-size:28px}.v4-friend-growth p{font-size:17px;color:#41695a}.v4-friend-growth button{font-size:16px}.v4-friend-notice{font-size:16px;font-weight:700;top:150px;color:#315c51;border:2px solid #fff7d8}
.v4-sea-title{padding:0;background:none;border:0;box-shadow:none}.v4-sea-title img{display:block;width:238px}.v4-sea-title p{font-size:14px;color:#315e59;background:#fff9e0cf;display:inline-block;border-radius:10px;padding:7px 11px;margin:4px 0}.v4-sea-search input{font-size:17px}.v4-sea-search button{font-size:15px}.v4-sea button.v4-sea-today{font-size:14px}.v4-sea-home{font-size:16px!important}.v4-sea-hint{font-size:16px}.v4-sea-hint small{font-size:13px;font-weight:700}.v4-sea-destination h2{font-size:23px}.v4-sea-destination small{font-size:14px}
.v4-sharing{margin-top:16px;padding:16px;border-radius:18px;background:#edf5e7;border:2px solid #cbdfbf}.v4-sharing>strong{font-size:17px}.v4-sharing p{font-size:14px;color:#4f6d55}.v4-share-preview{background:#fffdf4;padding:17px;border-radius:15px;margin-top:13px}.v4-share-preview blockquote{margin:12px 0;padding:14px;background:#f7f3e6;border-radius:10px;font-size:16px;white-space:pre-wrap;max-height:200px;overflow:auto;overflow-wrap:anywhere}.v4-share-preview .v4-actions{justify-content:center}
.v4-shared-entry,.v4-received article{padding:18px 22px;border:2px solid #d1e2c6;background:#fffef5;border-radius:18px;margin:14px 0}.v4-shared-entry small{font-size:15px;color:#568068}.v4-shared-entry .v4-record-words span{padding:5px 10px;background:#e9f4df;border-radius:10px}.v4-shared-empty{text-align:center;padding:25px 15px}.v4-shared-empty>span{font-size:48px;color:#daaa5c}.v4-shared-empty h3{font-size:23px}.v4-received{margin-top:28px}.v4-received p{white-space:pre-wrap;overflow-wrap:anywhere}.v4-note-examples{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 22px}.v4-note-examples button{font-size:13px;padding:9px 12px}.v4-friend .v4-dialog{max-height:85dvh}.v4-friend textarea{font:700 17px/1.8 Maplestory,sans-serif}
.v4-empathy-star{position:absolute;inset:0;z-index:20;pointer-events:none;overflow:hidden}.v4-empathy-star span,.v4-empathy-star i{position:absolute;left:20%;top:65%;font-style:normal;font-size:75px;color:#ffdc74;-webkit-text-stroke:2px #fff8cf;text-shadow:0 0 18px #ffe297;opacity:0;animation:v4-shooting-star 1.15s cubic-bezier(.15,.6,.4,1) both}.v4-empathy-star i{font-size:35px;animation-delay:.10s}.v4-empathy-star i:last-child{font-size:23px;animation-delay:.18s}@keyframes v4-shooting-star{0%{opacity:0;transform:translate(0,0) scale(.3) rotate(-30deg)}15%{opacity:1}70%{opacity:1}100%{opacity:0;transform:translate(58vw,-44vh) scale(.65) rotate(35deg)}}
@media(max-width:700px){.v4-friend-title{max-width:calc(100% - 160px)}.v4-friend-title img{width:150px}.v4-friend-title h1{font-size:14px;padding:5px 9px}.v4-friend-header nav button{font-size:12px;padding:9px 8px}.v4-friend-controls{gap:4px;padding:6px;right:10px;bottom:14px}.v4-friend-controls button{width:41px;height:43px;min-width:41px;padding:8px}.v4-friend-controls svg{width:22px;height:22px}.v4-friend-interact img{width:52px;height:55px}.v4-friend-interact strong{font-size:13px}.v4-friend-welcome{top:137px}.v4-friend-growth{bottom:86px;max-height:35dvh;overflow:auto}.v4-friend-notice{font-size:14px;top:120px}.v4-sea-title img{width:186px}.v4-sea-finder{top:118px}.v4-sea-search input{font-size:15px}.v4-sea-search button{font-size:13px}.v4-sea button.v4-sea-today{font-size:12px}.v4-sea-tools{gap:5px;padding:6px}.v4-sea-tools button{width:42px;height:44px;min-width:42px;padding:8px}.v4-sea-hint{font-size:13px}.v4-sea-hint small{font-size:11px}.v4-sea-destination h2{font-size:18px}.v4-sea-home{font-size:13px!important}}
@media(max-width:380px){.v4-friend-title img{width:123px}.v4-friend-header nav button{font-size:11px;padding:9px 6px}.v4-friend-controls button{width:38px;min-width:38px}.v4-sea-title img{width:155px}.v4-sea-tools{gap:3px}.v4-sea-tools button{width:39px;min-width:39px}}
@media(prefers-reduced-motion:reduce){.v4-empathy-star{display:none}}

/* Projected labels appear only after their first world-space placement. */
[data-friend-anchor],[data-world-anchor]{visibility:hidden;transition:none!important;animation:none!important}
.v4-friend-shared-note{display:block;font-size:12px;line-height:1.6;color:#456959;background:#fff9e8ed;padding:7px 11px;border-radius:12px;max-width:250px;margin-top:6px}
@media(max-width:700px){.v4-friend-shared-note{max-width:180px;font-size:11px}.v4-progress{flex-wrap:wrap;gap:5px}.v4-progress span{white-space:nowrap}}
.v4-friend-title .v4-friend-shared-note{font-size:13px;letter-spacing:0;line-height:1.6}
.v4-friend-welcome{top:220px}
@media(max-width:700px){.v4-friend-title .v4-friend-shared-note{font-size:11px}.v4-friend-welcome{top:215px}}

.v4-sea-tools button.v4-sea-text-button{width:auto;flex:0 0 auto;white-space:nowrap;word-break:keep-all;padding:10px 13px;font-size:13px;line-height:1.3}
@media(max-width:380px){.v4-sea-tools button.v4-sea-text-button{padding:8px 10px;font-size:12px}}
