.memory-map-page .album-main{max-width:1220px}
.memory-map-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 18px}
.memory-map-tabs button,.memory-preview-tools button{min-height:44px;padding:8px 15px;border:1px solid #d6c5b2;border-radius:999px;background:#fffaf2;color:#355568;font-weight:700;cursor:pointer}
.memory-map-tabs button[aria-pressed=true],.memory-preview-tools button[aria-pressed=true]{background:#a65739;border-color:#a65739;color:white}
.memory-map-panel{padding:22px;border:1px solid #e6d8c8;border-radius:18px;background:#fffdf9;box-shadow:0 10px 28px #513c2310}
.memory-map-panel[hidden]{display:none}.memory-map-panel h2{margin:0 0 15px;font-family:"Yu Mincho","Hiragino Mincho ProN",serif}
.memory-map-more{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin:15px 0}.memory-map-more button{min-height:44px;padding:9px 18px;border:1px solid #c8b7a7;border-radius:999px;background:#fffaf2;color:#355568;font-weight:700;cursor:pointer}
.memory-map-controls{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:12px}.memory-map-controls label{font-size:12px;font-weight:700;min-width:135px}.memory-map-controls select,.memory-form input,.memory-form textarea,.memory-form select,.memory-settings-form select,.memory-album-list input,.memory-album-list textarea,.memory-album-list select{display:block;width:100%;min-height:44px;margin-top:5px;padding:9px;border:1px solid #cbbbab;border-radius:9px;background:#fff;font-size:16px;color:#283b43}
.memory-map-canvas{height:min(58vh,590px);min-height:350px;border-radius:13px;background:#e9e5db;overflow:hidden}.memory-map-selection{margin-top:12px;padding:15px 18px;border:1px solid #e2d6c5;border-radius:12px;background:#fff9ef}.memory-map-selection h3{margin:0 0 8px}.memory-map-selection article{padding:12px 0;border-top:1px solid #e6dacb}.memory-map-selection article:first-of-type{border-top:0}.memory-map-selection img{max-width:180px;height:105px;object-fit:cover;border-radius:8px;margin:4px 7px 4px 0}.memory-map-selection p{line-height:1.6;overflow-wrap:anywhere}
.memory-photo-pin{width:52px;height:52px;border:3px solid #fff9ef;border-radius:50%;background:#c26b45;box-shadow:0 3px 14px #1e2e3980;display:grid;place-items:center;overflow:hidden;cursor:pointer}.memory-photo-pin img{width:100%;height:100%;object-fit:cover}.memory-photo-pin span{color:white;font-weight:800}
.memory-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:13px}.memory-photo-card{padding:0;border:1px solid #e2d7ca;border-radius:12px;background:#fff9ef;overflow:hidden;text-align:left;cursor:pointer}.memory-photo-card img{display:block;width:100%;height:160px;object-fit:cover}.memory-photo-card span{display:block;padding:9px;font-size:13px;line-height:1.45}.memory-photo-card small{color:#66747a}
.memory-photo-section{margin:0 0 22px}.memory-photo-section h3{margin:0 0 10px;color:#355568}
.memory-post-list,.memory-album-list{display:grid;gap:13px}.memory-post-card,.memory-album-card{padding:17px;border:1px solid #e2d7ca;border-radius:12px;background:#fff9ef}.memory-post-card h3,.memory-album-card h3{margin:0 0 7px}.memory-post-card p,.memory-album-card p{line-height:1.6;overflow-wrap:anywhere}.memory-post-card img{height:100px;width:130px;object-fit:cover;border-radius:8px;margin-right:6px}.memory-post-card button,.memory-album-card button,.memory-form button,.memory-settings-form button,#friend-incoming button,#friend-outgoing button,#friend-list button,.memory-map-selection button,.memory-photo-dialog button{min-height:44px;margin:4px 6px 4px 0;padding:9px 13px;border:1px solid #c8b7a7;border-radius:8px;background:#fff;color:#355568;cursor:pointer}.memory-post-card select{min-height:44px;padding:7px;border:1px solid #c8b7a7;border-radius:8px;background:#fff;color:#283b43;font-size:15px}
.memory-album-card .memory-album-cover{display:block;width:min(100%,360px);height:190px;object-fit:cover;border-radius:10px;margin:10px 0}
.memory-form{display:grid;gap:10px;padding:18px;border:1px solid #eadbc8;border-radius:12px;background:#fff9ef;margin-bottom:18px}.memory-form h3{margin:0}.memory-form label,.memory-album-card label{font-size:13px;font-weight:700}.memory-form textarea,.memory-album-list textarea{min-height:74px;resize:vertical}
.memory-settings-form fieldset{border:0;padding:0;margin:0 0 18px}.memory-settings-form legend{font-weight:800;margin-bottom:10px}.memory-settings-form fieldset label{display:grid;grid-template-columns:24px 1fr;column-gap:9px;align-items:start;padding:13px;margin:7px 0;border:1px solid #e1d4c7;border-radius:11px;background:#fffaf3;cursor:pointer}.memory-settings-form fieldset label input{width:20px;height:20px;margin-top:2px;accent-color:#a65739}.memory-settings-form fieldset label span{grid-column:2;font-size:13px;color:#647278}.memory-check{display:flex;gap:8px;align-items:center;min-height:44px}.memory-check input{width:20px;height:20px}.memory-preview-tools{margin-top:24px;padding-top:17px;border-top:1px solid #e5d7c7}.memory-preview-tools>div:first-of-type{display:flex;gap:8px;flex-wrap:wrap}.memory-share-preview{margin-top:12px;padding:15px;border:1px solid #e2d7ca;border-radius:10px;background:#fff9ef}.memory-share-preview ul{padding-left:18px}
.memory-confirm-dialog,.memory-photo-dialog{width:min(600px,calc(100vw - 24px));max-height:90vh;border:1px solid #d8c9b7;border-radius:18px;background:#fffdf9;color:#293e45;padding:20px;box-shadow:0 18px 45px #1d2b3880}.memory-confirm-dialog::backdrop,.memory-photo-dialog::backdrop{background:#1d2b3899}.memory-confirm-dialog h2{font-size:22px}.memory-photo-dialog img{display:block;max-height:65vh;max-width:100%;margin:auto;object-fit:contain}.memory-photo-dialog form{text-align:right}.memory-photo-dialog form button{font-size:24px}
.memory-confirm-map{height:200px;margin:10px 0;border-radius:10px;background:#e9e5db}.memory-confirm-preview{max-height:220px;overflow:auto}.memory-confirm-preview article{padding:8px 0;border-bottom:1px solid #e2d7ca}.memory-confirm-preview article p{margin:4px 0}.memory-confirm-preview img{width:68px;height:52px;object-fit:cover;border-radius:6px;margin-right:4px}
#friend-incoming>div,#friend-outgoing>div,#friend-list>div{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:9px;border-top:1px solid #e5d8c8}
@media(max-width:760px){.memory-map-page .album-main{padding:15px 10px 70px}.memory-map-panel{padding:13px}.memory-map-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.memory-map-tabs button{padding:6px 3px;font-size:11px}.memory-map-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.memory-map-controls label{min-width:0}.memory-map-canvas{height:46vh;min-height:280px}.memory-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.memory-photo-card img{height:140px}.memory-map-selection{padding:13px}.memory-map-selection img{max-width:125px;height:90px}}
