.account-area{position:relative;flex-shrink:0}.account-area .account-bar{width:100%;border:0;border-top:1px solid #ffffff0e;text-align:left;color:inherit;cursor:pointer}.account-copy{flex:1;min-width:0}.account-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:215px}.account-chevron{font-size:20px;color:#8b9b86;transition:transform .2s}.account-bar[aria-expanded=true] .account-chevron{transform:rotate(180deg)}.account-menu{position:absolute;z-index:30;left:12px;right:12px;bottom:calc(100% + 9px);background:linear-gradient(145deg,#30372ffb,#1b221bfc);border:1px solid #ffffff23;border-radius:18px;box-shadow:0 -8px 35px #0004,inset 0 1px 0 #ffffff09;padding:7px;animation:menu-up .16s ease-out}.account-menu button{display:flex;align-items:center;gap:12px;width:100%;padding:13px 15px;border:0;background:transparent;color:#e1ebdc;border-radius:12px;font-size:12px;text-align:left}.account-menu button span{font-size:19px;width:22px;text-align:center;color:#a3baa0}.account-menu button:hover,.account-menu button:focus-visible{background:#ffffff09}.account-menu #logout{border-top:1px solid #ffffff0b;border-radius:0 0 12px 12px;color:#dcae9e}.avatar{overflow:hidden;flex-shrink:0}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.profile-dialog{box-sizing:border-box;width:min(390px,calc(100vw - 36px));padding:32px;max-height:90dvh;overflow:auto;border:1px solid #ffffff29;border-radius:27px;color:#eaf1e6;background:linear-gradient(145deg,#2c332b,#151c16);box-shadow:inset 0 1px 0 #ffffff0c,0 24px 100px #0008}.profile-dialog::backdrop{background:#050a075c;backdrop-filter:blur(6px)}.profile-dialog h2{font-weight:500;font-size:24px;margin:10px 0 26px}.close-profile{position:absolute;right:17px;top:13px;border:0;background:transparent;color:#9bab93;font-size:26px;padding:4px 9px}.profile-dialog label{font-size:11px;color:#b6c5ae;margin:19px 0 9px}.profile-dialog input{background:#111b1380;border:1px solid #ffffff16;border-radius:12px}.profile-dialog input[readonly]{color:#83947c;background:#ffffff03}.profile-avatar-row{display:flex;align-items:center;gap:19px;padding-bottom:17px;border-bottom:1px solid #ffffff0d}.profile-avatar{width:70px;height:70px;border-radius:50%;font-size:23px;border:1px solid #7cae6e66;box-shadow:0 0 0 5px #80af7010}.profile-avatar-row .avatar-upload{cursor:pointer;font-size:12px;color:#79df91;margin:0 0 9px;width:max-content}.profile-avatar-row small{font-size:9px;color:#889b80}.profile-hint{font-size:10px;color:#859a7b;line-height:1.7;margin:10px 0}.profile-dialog .form-error{min-height:17px;margin:15px 0}.profile-dialog .primary-button{padding:14px 18px}.profile-dialog .avatar-upload:hover{color:#adf9bd}@keyframes menu-up{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.search-panel{overflow:visible}.account-copy strong{max-width:150px}.account-menu{left:0;right:0}.category-cards{overflow:hidden;border-radius:25px 25px 0 0}.account-area .account-bar{border-radius:0 0 25px 25px}.profile-dialog{padding:28px}}@media(prefers-reduced-motion:reduce){.account-menu{animation:none}}
/* Independent avatar and account-text targets; coordinated panel motion. */
.account-area .account-bar{cursor:default;padding:0 18px 0 76px;min-height:78px;display:flex;align-items:center;background:transparent}
.account-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;align-self:stretch;width:100%;border:0;border-radius:14px;background:transparent;color:inherit;text-align:left;padding:13px 4px;cursor:pointer}
.account-copy:hover{background:#ffffff03}.account-copy strong{font-size:12px;font-weight:500;line-height:1.6}.account-copy small{font-size:10px;color:#83917d;margin-top:3px}
.avatar-toggle{position:absolute;z-index:16;left:46px;bottom:44px;display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;background:transparent;border-radius:50%;cursor:pointer;transition:transform 420ms cubic-bezier(.22,1,.36,1),box-shadow 420ms cubic-bezier(.22,1,.36,1)}
.avatar-toggle .avatar{width:38px;height:38px;pointer-events:none}.avatar-toggle:hover{transform:scale(1.06)}.avatar-toggle:active{transform:scale(.96)}
.search-panel{transform-origin:40px calc(100% - 39px);transition:opacity 360ms cubic-bezier(.22,1,.36,1),transform 460ms cubic-bezier(.22,1,.36,1),clip-path 460ms cubic-bezier(.22,1,.36,1),visibility 0s linear;clip-path:inset(0 round 28px)}
.sidebar-collapsed .search-panel{opacity:0;transform:scale(.94) translate3d(0,8px,0);clip-path:inset(calc(100% - 78px) calc(100% - 78px) 0 0 round 39px);pointer-events:none;visibility:hidden;transition:opacity 330ms cubic-bezier(.22,1,.36,1),transform 460ms cubic-bezier(.22,1,.36,1),clip-path 460ms cubic-bezier(.22,1,.36,1),visibility 0s linear 460ms}
.sidebar-collapsed .avatar-toggle{transform:scale(1.12);box-shadow:0 10px 28px #0005,0 0 0 5px #ffffffc9}.sidebar-collapsed .avatar-toggle:hover{transform:scale(1.18)}
.floating-search{transition:left 460ms cubic-bezier(.22,1,.36,1),width 460ms cubic-bezier(.22,1,.36,1)}
.sidebar-collapsed .floating-search{left:24px;width:min(620px,calc(100vw - 72px))}.place-detail{transition:left 460ms cubic-bezier(.22,1,.36,1)}.sidebar-collapsed .place-detail{left:24px}
.account-menu{animation:none;transform-origin:30px 100%;will-change:transform,opacity}
.profile-dialog[open]{animation:profile-enter 320ms cubic-bezier(.22,1,.36,1)}
@keyframes profile-enter{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:850px){.avatar-toggle{left:38px;bottom:36px}.sidebar-collapsed .floating-search{left:16px;width:calc(100vw - 36px)}.sidebar-collapsed .place-detail{left:16px}}
@media(max-width:600px){.account-area .account-bar{min-height:60px;padding:0 14px 0 65px}.account-copy{padding:9px 3px}.avatar-toggle{left:29px;bottom:31px;width:34px;height:34px}.avatar-toggle .avatar{height:34px;width:34px}.account-copy strong{font-size:11px}.account-copy small{font-size:9px}.search-panel{transform-origin:32px calc(100% - 30px);clip-path:inset(-200px -10px -10px round 25px)}.sidebar-collapsed .search-panel{clip-path:inset(calc(100% - 60px) calc(100% - 65px) 0 0 round 30px)}.sidebar-collapsed .floating-search{left:14px;width:auto;right:14px}.sidebar-collapsed .place-detail{left:14px}}
@media(prefers-reduced-motion:reduce){.search-panel,.avatar-toggle,.floating-search,.place-detail{transition:none!important}.profile-dialog[open]{animation:none}.sidebar-collapsed .search-panel{visibility:hidden;transition:none}}
/* Profile heading and whole-row avatar selection. */
.profile-dialog>#profile-title{display:block;margin:2px 0 25px;font-size:13px;letter-spacing:.5px;font-weight:500;color:#67dc86}
.profile-dialog .profile-avatar-row{display:flex;width:100%;text-align:left;padding:12px 0 24px;margin:0;border:0;border-bottom:1px solid #ffffff0d;background:transparent;color:inherit;border-radius:12px 12px 0 0;cursor:pointer;transition:opacity 220ms cubic-bezier(.22,1,.36,1)}
.profile-dialog .profile-avatar-row:hover{opacity:.55;filter:none}.profile-dialog .profile-avatar-row:focus-visible{outline:2px solid #70d990;outline-offset:5px}
.profile-avatar-row>span:last-child{display:flex;flex-direction:column;gap:9px;min-width:0}.profile-avatar-row .avatar-upload{display:block;font-size:12px;color:#c2d4bd;margin:0}.profile-avatar-row small{font-size:9px;color:#85967e;line-height:1.7}
.avatar-editor h2{margin:0 0 7px;font-size:20px}.crop-hint{font-size:11px;line-height:1.8;color:#8c9e85;margin:0 0 18px}
.crop-stage{position:relative;width:100%;aspect-ratio:1;border-radius:16px;overflow:hidden;background:repeating-conic-gradient(#253025 0% 25%,#1d251e 0% 50%) 50% / 16px 16px;border:1px solid #ffffff15}
#crop-canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab;outline:none}#crop-canvas:active{cursor:grabbing}#crop-canvas:focus-visible{outline:2px solid #58d97c;outline-offset:-3px}
.crop-mask{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle closest-side,transparent calc(100% - 1px),#ddeedb85 calc(100% - 1px),#ddeedb85 100%,#080d0a9c calc(100% + 1px))}
.crop-zoom{display:flex;align-items:center;gap:14px;margin:20px 3px;color:#9bb191}.profile-dialog #crop-zoom{height:4px;padding:0;border:0;border-radius:5px;accent-color:#56d47c;cursor:pointer;flex:1;width:100%;box-shadow:none;background:#ffffff13}
.crop-preview-row{display:flex;gap:13px;align-items:center;margin:18px 0 25px;padding:15px 0;border-top:1px solid #ffffff0d;border-bottom:1px solid #ffffff0d}#crop-preview{display:block;flex-shrink:0;border-radius:50%;width:52px;height:52px;border:1px solid #ffffff29}
.crop-preview-row>span{font-size:12px;flex:1;color:#c1d2b8}.crop-preview-row small{display:block;font-size:9px;color:#7e9474;margin-top:7px;line-height:1.6}.crop-preview-row button{font-size:11px}
.crop-actions{display:grid;grid-template-columns:1fr 1.6fr;gap:10px}.crop-actions>button{border:1px solid #ffffff16;border-radius:14px;background:#ffffff05;padding:13px;font-size:12px;color:#b6c7ad}.crop-actions>.primary-button{background:#34d366;color:#071a0c;justify-content:center;border-color:transparent}
@media(prefers-reduced-motion:reduce){.profile-dialog .profile-avatar-row{transition:none}}
/* Only editable text fields show a caret; clicking labels or cards never does. */
body{caret-color:transparent}
button,button *,[role="tab"],[role="option"],.account-bar,.account-menu,.profile-dialog label,.small-tag,.crop-stage{-webkit-user-select:none;user-select:none;caret-color:transparent}
input:not([readonly]):not([type="range"]):not([type="file"]),textarea,[contenteditable="true"]{caret-color:#70df91;-webkit-user-select:text;user-select:text;cursor:text}
input[readonly]{caret-color:transparent;cursor:default;-webkit-user-select:text;user-select:text}
button:focus:not(:focus-visible),[role="tab"]:focus:not(:focus-visible),canvas:focus:not(:focus-visible){outline:none}
#search-form #query:focus,#search-form #query:focus-visible{outline:none!important;border:0!important;box-shadow:none!important}

#detail-selection-note{font-size:10px;color:#82b88b;margin-top:10px}
