:root{--color-primary:#00a6f4;--color-primary-strong:#0084d1;--color-primary-hover:#0092d6;--color-primary-soft:#dff2fe;--color-primary-tint:#f0f9ff;--color-tag-text:#0069a8;--color-bg:#f8fafc;--color-surface:#fff;--color-text:#1d293d;--color-text-body:#45556c;--color-text-strong:#314158;--color-muted:#62748e;--color-subtle:#90a1b9;--color-border:#e2e8f0;--color-border-soft:#f1f5f9;--color-danger:#e7000b;--color-kakao:#fee500;--radius-sm:10px;--radius-md:14px;--radius-lg:24px;--shadow-card:0 1px 3px #0000001a, 0 1px 2px -1px #0000001a;--shadow-header:0 1px 1.5px #0000001a, 0 1px 1px #0000001a;--shadow-panel:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--header-height:64px;--content-width:1200px;--gutter:24px;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;font-family:Inter,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Malgun Gothic,Apple SD Gothic Neo,Noto Sans KR,sans-serif;font-size:16px;line-height:1.5}*,:before,:after{box-sizing:border-box}body{background:var(--color-bg);word-break:keep-all;overflow-wrap:anywhere;min-width:320px;margin:0}img{max-width:100%;display:block}a{color:var(--color-primary)}button,input,select,textarea{font:inherit;color:inherit}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}svg{flex-shrink:0}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.app{flex-direction:column;min-height:100vh;display:flex}.app-header{z-index:10;background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-header);position:sticky;top:0}.app-header-inner{min-height:var(--header-height);justify-content:space-between;align-items:center;gap:24px;padding:0 16px;display:flex}.brand{white-space:nowrap;align-items:center;gap:8px;text-decoration:none;display:inline-flex}.brand-mark{border-radius:var(--radius-sm);background:var(--color-primary-soft);width:36px;height:36px;color:var(--color-primary);justify-content:center;align-items:center;display:inline-flex}.brand-name{color:var(--color-primary);font-size:20px;font-weight:800;line-height:28px}.main-nav{align-items:center;gap:8px;display:flex}.nav-link{border-radius:var(--radius-md);height:40px;color:var(--color-muted);white-space:nowrap;align-items:center;gap:8px;padding:0 12px;font-weight:500;text-decoration:none;display:inline-flex}button.nav-link{cursor:pointer;background:0 0;border:0}button.nav-link:disabled{opacity:.6;cursor:wait}.nav-link:hover{color:var(--color-text);background:var(--color-bg)}.nav-link.active{color:var(--color-primary-strong);background:var(--color-primary-tint)}.app-main{width:100%;max-width:var(--content-width);padding:24px var(--gutter) 48px;flex:1;margin:0 auto}@media (width<=760px){:root{--gutter:16px}.app-header-inner{flex-direction:column;align-items:stretch;gap:4px;padding-top:12px}.main-nav{scrollbar-width:none;gap:4px;margin:0 -16px;padding:0 16px 8px;overflow-x:auto}.main-nav::-webkit-scrollbar{display:none}.nav-link{gap:6px;padding:0 10px}}@media (width<=480px){.main-nav{gap:0;overflow-x:visible}.nav-link{flex-direction:column;flex:1;justify-content:center;gap:2px;height:52px;padding:0 2px;font-size:12px;line-height:16px}}.page-header{flex-direction:column;gap:8px;margin-bottom:32px;display:flex}.page-title{letter-spacing:-.75px;color:var(--color-text);margin:0;font-size:30px;font-weight:800;line-height:36px}.page-description{color:var(--color-muted);margin:0}@media (width<=760px){.page-title{font-size:24px;line-height:32px}.page-header{margin-bottom:24px}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.tag{border-radius:var(--radius-sm);background:var(--color-primary-tint);min-height:32px;color:var(--color-tag-text);align-items:center;padding:0 12px;font-size:14px;font-weight:600;line-height:20px;display:inline-flex}.icon-box{border-radius:var(--radius-sm);background:var(--color-primary-soft);width:36px;height:36px;color:var(--color-primary);justify-content:center;align-items:center;display:inline-flex}.icon-box-large{border-radius:16px;width:80px;height:80px}.button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:48px;color:var(--color-text-strong);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:500;text-decoration:none;display:inline-flex}.button:hover{background:var(--color-bg)}.button-primary{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-header);border-color:#0000;font-weight:700}.button-primary:hover{background:var(--color-primary-hover)}.button-kakao{background:var(--color-kakao);color:#000;border-color:#0000}.button:disabled{opacity:.5;cursor:not-allowed}.input{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:100%;min-height:53px;color:var(--color-text);padding:14px 20px}.input::placeholder{color:#1d293d80}.not-found{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:64px 0;display:flex}.not-found-code{color:var(--color-primary);margin:8px 0 0;font-size:48px;font-weight:800;line-height:1}.not-found .page-description{margin-bottom:12px}.loading-state{color:var(--color-muted);flex-direction:column;align-items:center;gap:12px;padding:64px 0;display:flex}.loading-state p{margin:0}.spinner{border:3px solid var(--color-primary-soft);border-top-color:var(--color-primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.field{flex-direction:column;gap:6px;display:flex}.field-label{color:var(--color-text-strong);font-size:14px;font-weight:600}.field-error{color:var(--color-danger);font-size:14px}.input-invalid{border-color:var(--color-danger)}.alert{border-radius:var(--radius-md);margin:0;padding:12px 16px;font-size:14px;line-height:20px}.alert-error{color:#b91c1c;background:#fef2f2}.alert-info{background:var(--color-primary-tint);color:var(--color-tag-text)}.button-block{width:100%}.auth-page{justify-content:center;display:flex}.auth-card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);width:100%;max-width:448px;box-shadow:var(--shadow-panel);flex-direction:column;gap:24px;padding:40px;display:flex}.auth-header{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.auth-header .icon-box{margin-bottom:24px}.auth-header-left{text-align:left;align-items:flex-start}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-form .button-primary{min-height:56px;margin-top:8px}.social-login{flex-direction:column;gap:12px;display:flex}.divider{color:var(--color-subtle);align-items:center;gap:16px;margin-bottom:12px;font-size:14px;font-weight:500;display:flex}.divider:before,.divider:after{content:"";border-top:1px solid var(--color-border);flex:1}.auth-switch{text-align:center;color:var(--color-muted);margin:0}.auth-switch a{font-weight:700;text-decoration:none}@media (width<=480px){.auth-card{box-shadow:var(--shadow-card);padding:28px 20px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.state-box{border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:48px 24px;display:flex}.state-box .button{margin-top:8px}.state-title{color:var(--color-text);margin:0;font-weight:700}.state-description{color:var(--color-muted);margin:0}.image-frame{background:var(--color-primary-tint);width:100%;position:relative;overflow:hidden}.image-frame img{object-fit:cover;width:100%;height:100%}.image-fallback{width:100%;height:100%;color:var(--color-primary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:16px;font-weight:700;display:flex}.tag-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tag-list .tag{min-height:28px;padding:0 10px;font-size:13px}.explore-toolbar{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.search-form{gap:8px;min-width:0;display:flex}.explore-toolbar .search-form{flex:320px}.search-form .input{flex:1;min-width:0;min-height:48px;padding:10px 16px}.sort-select{flex:none}.sort-select .input{cursor:pointer;min-height:48px;padding:10px 40px 10px 16px}.result-summary{color:var(--color-muted);margin:0 0 16px}.result-summary strong{color:var(--color-text)}.destination-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px;margin:0;padding:0;list-style:none;transition:opacity .15s;display:grid}.destination-grid.is-loading{opacity:.5}.destination-card{height:100%;color:inherit;flex-direction:column;text-decoration:none;display:flex}.destination-card:hover{border-color:var(--color-primary)}.destination-card-image{aspect-ratio:4/3}.destination-card-body{flex-direction:column;flex:1;gap:10px;padding:20px;display:flex}.destination-card-title{margin:0;font-size:20px;line-height:28px}.destination-card-summary{color:var(--color-text-body);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.destination-card-meta{color:var(--color-muted);margin:auto 0 0;font-size:14px}.pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-top:32px;display:flex}.pagination-list{flex-wrap:wrap;justify-content:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.button-page{font-variant-numeric:tabular-nums;min-width:44px;min-height:44px;padding:0 10px}.button-page.is-current{background:var(--color-primary);color:#fff;border-color:#0000;font-weight:700}.button-page.is-current:hover{background:var(--color-primary-hover)}.pagination-gap{min-width:24px;min-height:44px;color:var(--color-subtle);justify-content:center;align-items:center;display:flex}@media (width<=480px){.explore-toolbar{flex-direction:column}.explore-toolbar .search-form{flex-basis:auto}.sort-select .input{width:100%}.destination-grid{grid-template-columns:1fr;gap:16px}.pagination,.pagination-list{gap:4px}.button-page{min-width:40px;min-height:40px;padding:0 6px}.pagination-gap{min-width:16px;min-height:40px}}.back-link{color:var(--color-muted);margin-bottom:16px;font-weight:500;text-decoration:none;display:inline-block}.back-link:hover{color:var(--color-primary)}.destination-hero-image{aspect-ratio:16/9;border-radius:var(--radius-lg);max-height:440px}.destination-detail-header{flex-direction:column;gap:12px;margin:24px 0 32px;display:flex}.destination-detail-summary{color:var(--color-text-body);margin:0;font-size:18px}.destination-detail-meta{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.destination-post-count{color:var(--color-muted);font-size:14px}.section-title{margin:0 0 12px;font-size:20px;line-height:28px}.ai-briefing{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:24px}.ai-briefing-text{color:var(--color-text-body);white-space:pre-line;margin:0;line-height:1.7}.ai-briefing-time{color:var(--color-subtle);margin:12px 0 0;font-size:14px}.ai-sources{border-top:1px solid var(--color-border);margin-top:16px;padding-top:16px}.ai-sources-title{color:var(--color-text-strong);margin:0 0 8px;font-size:14px;font-weight:600}.ai-sources ul{flex-wrap:wrap;gap:8px 16px;margin:0;padding:0;list-style:none;display:flex}.ai-sources a{word-break:break-all;font-size:14px}@media (width<=480px){.destination-hero-image{border-radius:var(--radius-md)}.ai-briefing{padding:20px}}.avatar{background:var(--color-primary-soft);color:var(--color-primary-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.badge{background:var(--color-primary-tint);min-height:24px;color:var(--color-tag-text);white-space:nowrap;border-radius:999px;align-items:center;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex}.stat{align-items:center;gap:4px;display:inline-flex}.post-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin:0;padding:0;list-style:none;display:grid}.post-card-item{flex-direction:column;height:100%;display:flex}.post-card-item:hover,.post-card-item:focus-within{border-color:var(--color-primary)}.post-card{color:inherit;flex-direction:column;flex:1;text-decoration:none;display:flex}.post-card-author-link{min-width:0;color:inherit;flex:1;align-items:center;gap:10px;text-decoration:none;display:flex}.post-card-author-link:hover .post-card-author-name{color:var(--color-primary-strong)}.post-card-author{align-items:center;gap:10px;min-width:0;padding:14px 16px;display:flex}.post-card-author-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.post-card-date{color:var(--color-subtle);flex-shrink:0;font-size:13px}.post-card-image{aspect-ratio:4/3}.post-card-body{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex}.post-card-period{color:var(--color-muted);align-items:center;gap:6px;margin:0;font-size:13px;display:inline-flex}.post-card-title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:18px;line-height:26px;display:-webkit-box;overflow:hidden}.post-card-footer{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:12px;display:flex}.post-card-stats{color:var(--color-muted);gap:12px;font-size:14px;display:inline-flex}.post-card-cost{border-radius:var(--radius-sm);color:#047857;white-space:nowrap;background:#ecfdf5;padding:4px 10px;font-size:14px;font-weight:700}.list-footer{flex-direction:column;align-items:center;gap:12px;margin-top:24px;display:flex}.list-loading{color:var(--color-muted);align-items:center;gap:10px;margin:0;font-size:14px;display:flex}.spinner-small{border-width:2px;width:18px;height:18px}.list-end{text-align:center;color:var(--color-subtle);margin:24px 0 0;font-size:14px}.inline-error{border-radius:var(--radius-md);color:#b91c1c;background:#fef2f2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.inline-error p{margin:0}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.section-header .section-title{margin:0}.destination-posts{margin-top:40px}.post-detail{max-width:820px;margin:0 auto}.post-detail-header{flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.post-detail-destination{background:var(--color-primary);color:#fff;border-radius:999px;align-self:flex-start;align-items:center;gap:4px;padding:4px 12px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.post-detail-author{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.author-link{color:var(--color-text);align-items:center;gap:10px;font-weight:600;text-decoration:none;display:inline-flex}.post-detail-dates{color:var(--color-subtle);font-size:14px}.post-gallery{flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.post-gallery-main{aspect-ratio:4/3;border-radius:var(--radius-lg)}.post-gallery-thumbs{gap:8px;margin:0;padding:0 0 4px;list-style:none;display:flex;overflow-x:auto}.thumb{border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:2px solid #0000;width:72px;padding:0;display:block;overflow:hidden}.thumb .image-frame{aspect-ratio:1}.thumb .image-fallback svg{display:none}.thumb.active{border-color:var(--color-primary)}.post-detail-meta{flex-direction:column;gap:12px;margin-bottom:20px;display:flex}.post-detail-period{color:var(--color-muted);align-items:center;gap:6px;margin:0;display:inline-flex}.post-detail-content{color:var(--color-text-body);white-space:pre-line;margin:0 0 32px;font-size:17px;line-height:1.8}.post-cost{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);margin-bottom:24px;padding:24px}.cost-table{flex-direction:column;gap:10px;margin:0;display:flex}.cost-row{justify-content:space-between;gap:16px;display:flex}.cost-row dt{color:var(--color-muted)}.cost-row dd{white-space:nowrap;margin:0;font-weight:600}.cost-total{border-top:1px solid var(--color-border);margin-top:4px;padding-top:12px}.cost-total dt,.cost-total dd{color:var(--color-text);font-weight:700}.post-detail-stats{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:12px 20px;display:flex}.comment-section{border-top:1px solid var(--color-border);max-width:820px;margin:40px auto 0;padding-top:32px}.comment-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.comment-item{border-bottom:1px solid var(--color-border-soft);gap:12px;padding:16px 0;display:flex}.comment-body{flex:1;min-width:0}.comment-meta{color:var(--color-subtle);flex-wrap:wrap;align-items:center;gap:4px 8px;margin-bottom:4px;font-size:13px;display:flex}.comment-author{color:var(--color-text);font-size:14px;font-weight:600}.comment-content{color:var(--color-text-body);white-space:pre-line;margin:0}@media (width<=480px){.post-grid{grid-template-columns:1fr;gap:16px}.post-gallery-main{border-radius:var(--radius-md)}.post-cost{padding:20px}.section-header .sort-select,.section-header .sort-select .input{width:100%}}.post-editor{max-width:720px}.post-form{flex-direction:column;gap:16px;display:flex}.post-form-fieldset{border:0;flex-direction:column;gap:24px;min-width:0;margin:0;padding:0;display:flex}.field-group{border:0;min-width:0;margin:0;padding:0}.field-group>legend{margin-bottom:8px;padding:0}.field-hint{color:var(--color-muted);margin:4px 0 0;font-size:13px}.button-small{height:32px;min-height:0;padding:0 12px;font-size:13px}.textarea{resize:vertical;height:auto;min-height:180px;padding-top:10px;padding-bottom:10px;line-height:1.6}.date-range{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid}.date-range .input{width:100%}.cost-inputs{grid-template-columns:1fr 1fr;gap:12px;display:grid}.cost-input{color:var(--color-text-body);flex-direction:column;gap:4px;font-size:14px;display:flex}.cost-input-box{align-items:center;gap:8px;display:flex}.cost-input-box .input{text-align:right;flex:1;min-width:0}.cost-total-line{border-radius:var(--radius-sm);background:var(--color-primary-tint);color:var(--color-text-strong);justify-content:space-between;margin:12px 0 0;padding:12px 16px;display:flex}.cost-total-line strong{color:var(--color-primary-strong)}.destination-picker{flex-direction:column;gap:8px;display:flex}.destination-results{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);margin:0;padding:0;list-style:none;overflow:hidden}.destination-result{border:0;border-bottom:1px solid var(--color-border-soft);width:100%;font:inherit;text-align:left;color:var(--color-text);cursor:pointer;background:0 0;align-items:baseline;padding:10px 14px;display:flex}.destination-result-name{flex:none}.destination-result-summary{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-muted);flex:auto;font-size:14px;overflow:hidden}.destination-results li:last-child .destination-result{border-bottom:0}.destination-result:hover{background:var(--color-primary-tint)}.picked-destination{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.picked-destination-name{color:var(--color-text);font-weight:600}.tag-options{flex-wrap:wrap;gap:8px;display:flex}.tag-option{border:1px solid var(--color-border);background:var(--color-surface);height:32px;font:inherit;color:var(--color-text-body);cursor:pointer;border-radius:999px;padding:0 14px;font-size:14px}.tag-option.selected{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-tag-text);font-weight:600}.tag-option:disabled{cursor:not-allowed;opacity:.6}.image-field{flex-direction:column;gap:4px;display:flex}.image-list{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.image-item{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);flex-direction:column;gap:4px;padding:6px;display:flex;position:relative}.image-item.failed{border-color:var(--color-danger)}.image-item-preview{aspect-ratio:1;object-fit:cover;background:var(--color-border-soft);border-radius:8px;width:100%}.image-item-cover{background:var(--color-primary);color:#fff;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;position:absolute;top:10px;left:10px}.image-item-status{color:var(--color-muted);margin:0;font-size:12px}.image-item-status.error{color:var(--color-danger)}.image-item-actions{gap:4px;display:flex}.icon-button{border:1px solid var(--color-border);background:var(--color-surface);height:28px;font:inherit;color:var(--color-text-body);cursor:pointer;border-radius:8px;flex:1;font-size:13px}.icon-button.danger{color:var(--color-danger)}.icon-button:disabled{cursor:not-allowed;opacity:.4}.image-add{border:1px dashed var(--color-subtle);border-radius:var(--radius-sm);background:var(--color-surface);height:100%;min-height:120px;color:var(--color-muted);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:14px;display:flex}.image-add:hover{border-color:var(--color-primary);color:var(--color-primary-strong)}.image-add.disabled{cursor:not-allowed;opacity:.6}.image-add-count{color:var(--color-subtle);font-size:12px}.field-error-list{color:var(--color-danger);margin:4px 0 0;padding-left:18px;font-size:13px}.owner-actions{flex-direction:column;gap:12px;margin-top:24px;display:flex}.owner-actions-row{justify-content:flex-end;gap:8px;display:flex}.button-danger{border-color:var(--color-danger);background:var(--color-danger);color:#fff}.button-danger:hover{background:#c10007}.button-danger-outline{border-color:var(--color-danger);color:var(--color-danger)}.delete-confirm{border-radius:var(--radius-md);background:#fef2f2;border:1px solid #ffc9c9;flex-direction:column;gap:12px;padding:16px;display:flex}.delete-confirm-title{color:var(--color-text);margin:0;font-weight:600}@media (width<=480px){.date-range{grid-template-columns:1fr auto 1fr;gap:6px}.date-range .input{padding-left:10px;padding-right:6px;font-size:14px}.cost-inputs{grid-template-columns:1fr}.image-list{grid-template-columns:repeat(2,1fr)}.owner-actions-row .button{flex:1}}.post-reactions{flex-direction:column;gap:8px;display:flex}.post-reactions-row{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.reaction-button{border:1px solid var(--color-border);background:var(--color-surface);height:40px;font:inherit;color:var(--color-text-body);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.reaction-button:hover{border-color:var(--color-primary)}.reaction-button.active{border-color:var(--color-primary);background:var(--color-primary-tint);color:var(--color-primary-strong)}.reaction-button:disabled{cursor:wait;opacity:.6}.inline-message{color:var(--color-text-body);margin:0;font-size:14px}.inline-message.error{color:var(--color-danger)}.comment-login{border-radius:var(--radius-md);background:var(--color-primary-tint);color:var(--color-text-body);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.comment-login p{margin:0}.comment-form{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.comment-textarea{min-height:96px}.comment-form-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.comment-avatar-link{border-radius:50%;flex-shrink:0;align-self:flex-start;display:inline-flex}a.comment-author{text-decoration:none}a.comment-author:hover{color:var(--color-primary-strong)}.text-button{font:inherit;color:var(--color-muted);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:2px 4px;font-size:13px}.text-button.danger{color:var(--color-danger)}.comment-delete-confirm{border-radius:var(--radius-sm);background:#fef2f2;border:1px solid #ffc9c9;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;padding:10px 12px;font-size:14px;display:flex}.comment-delete-confirm span{flex:1;min-width:140px}.profile-page{flex-direction:column;gap:20px;max-width:960px;margin:0 auto;display:flex}.profile-card{gap:24px;padding:24px;display:flex}.profile-card-body{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.profile-name{margin:0;font-size:24px;line-height:32px}.profile-intro{color:var(--color-text-body);white-space:pre-line;margin:0}.profile-intro.empty{color:var(--color-subtle)}.profile-count{color:var(--color-muted);margin:0}.profile-count strong{color:var(--color-text)}.profile-info{border-top:1px solid var(--color-border-soft);gap:6px;margin:8px 0 0;padding:12px 0 0;font-size:14px;display:grid}.profile-info div{grid-template-columns:72px 1fr;gap:12px;display:grid}.profile-info dt{color:var(--color-muted)}.profile-info dd{overflow-wrap:anywhere;min-width:0;margin:0;font-weight:600}.profile-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.profile-section{flex-direction:column;gap:12px;padding:24px;display:flex;overflow:visible}.profile-section-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.profile-section-header .section-title{margin:0}.interest-tags-editor{flex-direction:column;gap:12px;display:flex}.profile-edit{padding:24px;overflow:visible}.profile-image-edit{align-items:center;gap:16px;display:flex}.profile-image-actions{flex-wrap:wrap;gap:8px;display:flex}.profile-image-actions label.button{cursor:pointer}.profile-intro-input{min-height:96px}.profile-lists{flex-direction:column;gap:16px;display:flex}.tabs{border-bottom:1px solid var(--color-border);gap:4px;display:flex}.tab{height:44px;font:inherit;color:var(--color-muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:0 16px;font-weight:600}.tab.active{border-bottom-color:var(--color-primary);color:var(--color-primary-strong)}@media (width<=480px){.profile-card{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:20px}.profile-info{text-align:left}.profile-actions{justify-content:center}.profile-section,.profile-edit{padding:20px}.profile-image-edit{flex-direction:column;align-items:flex-start}.tab{flex:1}.comment-form-footer .button{flex-shrink:0}.profile-lists .post-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.profile-lists .post-card-item{border-radius:var(--radius-sm)}.profile-lists .post-card-author{gap:4px;padding:6px}.profile-lists .post-card-author-link{gap:4px}.profile-lists .post-card-author .avatar{font-size:10px;width:18px!important;height:18px!important}.profile-lists .post-card-author-name{font-size:11px}.profile-lists .post-card-date,.profile-lists .post-card-period,.profile-lists .post-card-body .tag-list,.profile-lists .post-card-cost{display:none}.profile-lists .post-card-image{aspect-ratio:1}.profile-lists .post-card-image .image-fallback{font-size:11px}.profile-lists .post-card-body{gap:4px;padding:6px}.profile-lists .post-card-title{font-size:12px;line-height:16px}.profile-lists .post-card-footer{padding-top:4px}.profile-lists .post-card-stats{gap:6px;font-size:11px}}.nav-icon{display:inline-flex;position:relative}.nav-dot{border:2px solid var(--color-surface);background:var(--color-danger);border-radius:50%;width:8px;height:8px;position:absolute;top:-2px;right:-3px}.notifications-page{max-width:820px;margin:0 auto}.notification-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.notification-item{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;font:inherit;text-align:left;color:var(--color-text-body);cursor:pointer;align-items:center;gap:12px;padding:14px 16px;display:flex}.notification-item:hover{border-color:var(--color-primary)}.notification-item.unread{background:var(--color-primary-tint);border-color:#b8e6fe}.notification-item:disabled{cursor:wait;opacity:.7}.notification-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notification-message{color:var(--color-text)}.notification-item.unread .notification-message{font-weight:600}.notification-post{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.notification-time{color:var(--color-subtle);font-size:12px}.notification-state{color:var(--color-subtle);flex-shrink:0;font-size:12px}.notification-state.unread{background:var(--color-primary);color:#fff;border-radius:999px;padding:2px 8px;font-weight:600}.notifications-page .inline-error{margin-bottom:12px}.toast{z-index:50;border-radius:var(--radius-md);background:var(--color-text);max-width:min(420px,100vw - 32px);box-shadow:var(--shadow-panel);color:#fff;align-items:center;gap:8px;padding:12px 12px 12px 16px;display:flex;position:fixed;bottom:24px;right:24px}.toast-link{min-width:0;color:inherit;flex:1;align-items:center;gap:8px;font-size:14px;text-decoration:none;display:flex}.toast-close{font:inherit;color:inherit;cursor:pointer;opacity:.7;background:0 0;border:0}.admin-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.segmented{border-radius:var(--radius-md);background:var(--color-border-soft);padding:4px;display:inline-flex}.segment{border-radius:var(--radius-sm);height:36px;font:inherit;color:var(--color-muted);cursor:pointer;background:0 0;border:0;padding:0 16px;font-size:14px;font-weight:600}.segment.active{background:var(--color-surface);box-shadow:var(--shadow-card);color:var(--color-primary-strong)}.admin-total{color:var(--color-muted);font-size:14px}.admin-page .alert{margin-bottom:12px}.admin-table{border-collapse:collapse;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;font-size:14px}.admin-table th,.admin-table td{border-bottom:1px solid var(--color-border-soft);text-align:left;vertical-align:middle;padding:10px 12px}.admin-table th{background:var(--color-bg);color:var(--color-muted);white-space:nowrap;font-size:13px;font-weight:600}.admin-table td a{color:var(--color-text);text-decoration:none}.admin-table td a:hover{color:var(--color-primary-strong)}.admin-table tr.deleted td{color:var(--color-subtle)}.admin-title{text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.status-badge{color:#047857;white-space:nowrap;background:#ecfdf5;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-flex}.status-badge.deleted{background:var(--color-border-soft);color:var(--color-muted)}.admin-confirm{gap:6px;display:inline-flex}@media (width<=760px){.admin-table,.admin-table tbody,.admin-table tr,.admin-table td{width:100%;display:block}.admin-table{background:0 0;border:0}.admin-table thead{display:none}.admin-table tr{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);margin-bottom:10px;padding:8px 12px}.admin-table td{border-bottom:0;gap:12px;padding:6px 0;display:flex}.admin-table td:before{content:attr(data-label);width:72px;color:var(--color-muted);flex-shrink:0;font-size:12px}.admin-title{white-space:normal;max-width:none}}@media (width<=480px){.notification-item{padding:12px}.toast{max-width:none;bottom:16px;left:16px;right:16px}.segmented{width:100%}.segment{flex:1;padding:0 8px}}.auth-card .alert-info{white-space:pre-line}.auth-forgot{text-align:right;margin:0;font-size:14px}.auth-forgot a{color:var(--color-primary-strong);text-decoration:none}.step-indicator{grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.step-indicator li{color:var(--color-subtle);text-align:center;flex-direction:column;align-items:center;gap:4px;font-size:12px;display:flex}.step-number{background:var(--color-border-soft);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-weight:700;display:inline-flex}.step-indicator li.done .step-number{background:var(--color-primary-soft);color:var(--color-primary-strong)}.step-indicator li.current{color:var(--color-primary-strong);font-weight:600}.step-indicator li.current .step-number{background:var(--color-primary);color:#fff}.auth-inline-actions{justify-content:space-between;gap:12px;display:flex}.text-link{font:inherit;color:var(--color-primary-strong);cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:14px}.text-link:disabled{cursor:wait;opacity:.6}.settings-page{flex-direction:column;gap:20px;max-width:640px;margin:0 auto;display:flex}.settings-page .page-header{margin-bottom:0}.settings-page .page-description a{color:var(--color-primary-strong);text-decoration:none}.settings-section{flex-direction:column;gap:12px;padding:24px;display:flex;overflow:visible}.settings-section .section-title,.danger-zone .section-title{margin:0}.settings-form{flex-direction:column;gap:14px;display:flex}.settings-form>.button{align-self:flex-start}.danger-zone{border-radius:var(--radius-lg);background:#fef2f2;border:1px solid #ffc9c9;flex-direction:column;align-items:flex-start;gap:12px;padding:24px;display:flex}.danger-zone .section-title{color:#b91c1c}.danger-zone .settings-form{align-self:stretch}.danger-zone .input{background:var(--color-surface)}.checkbox-field{color:var(--color-text-body);align-items:flex-start;gap:8px;font-size:14px;display:flex}.checkbox-field input{margin-top:3px}.settings-actions{flex-wrap:wrap;gap:8px;display:flex}@media (width<=480px){.settings-section,.danger-zone{padding:20px}.settings-form>.button,.settings-actions .button{flex:1;align-self:stretch}}.app-alert{width:100%;max-width:var(--content-width);padding-left:var(--gutter);padding-right:var(--gutter);margin:16px auto 0}
