diff --git a/assets/built/screen.css b/assets/built/screen.css index 0c2a449..fb05a6a 100644 --- a/assets/built/screen.css +++ b/assets/built/screen.css @@ -100,6 +100,7 @@ menu { min-height: calc(100vh - var(--topbar-height)); width: min(100%, var(--shell-width)); margin: 0 auto; + align-items: start; transition: grid-template-columns 0.28s cubic-bezier(0.4, 0, 0.2, 1); } @@ -109,31 +110,13 @@ menu { } @media (min-width: 1024px) { - html, - body { - height: 100%; - overflow: hidden; - } - - .site-shell-wrap { - height: calc(100vh - var(--topbar-height)); - } - - .site-shell { - height: 100%; - min-height: 0; - } - - .site-main { - height: 100%; - min-height: 0; - overflow-y: auto; - overscroll-behavior: contain; - } - - .sidebar--left, - .sidebar--right { - height: 100%; + .sidebar.sidebar--left, + .sidebar.sidebar--right { + position: sticky; + top: var(--topbar-height); + align-self: start; + height: calc(100vh - var(--topbar-height)) !important; + max-height: calc(100vh - var(--topbar-height)); overflow: hidden; } } @@ -310,12 +293,22 @@ body.left-sidebar-collapsed .sidebar--left .sidebar__inner { display: flex; align-items: center; gap: 8px; - padding: 6px 0 6px 16px; + padding: 6px 10px 6px 0; border-radius: 18px; transition: background-color 0.22s ease, color 0.22s ease, padding 0.22s ease; font-size: 13px; } +.menu-group .nav a::before { + content: ""; + width: 4px; + height: 16px; + border-radius: 3px; + background: color-mix(in srgb, var(--border) 88%, #ffffff 12%); + flex: 0 0 auto; + transition: width 0.22s ease, height 0.22s ease, border-radius 0.22s ease, background-color 0.22s ease, transform 0.22s ease; +} + .menu-group .nav a:hover, .menu-sub-link:hover { background: var(--surface-muted); @@ -324,6 +317,33 @@ body.left-sidebar-collapsed .sidebar--left .sidebar__inner { padding-right: 12px; } +.menu-group .nav li:not(.nav-current) > a:hover::before { + width: 8px; + height: 8px; + border-radius: 999px; + background: #cfc7be; + transform: translateX(1px); +} + +.menu-group .nav .nav-current > a, +.menu-group .nav a.nav-current { + color: var(--text); +} + +.menu-group .nav .nav-current > a::before, +.menu-group .nav a.nav-current::before { + background: var(--accent); +} + +.menu-group .nav .nav-current > a:hover::before, +.menu-group .nav a.nav-current:hover::before { + width: 8px; + height: 8px; + border-radius: 999px; + background: var(--accent); + transform: translateX(1px); +} + .link-list { margin: 0; padding: 0; diff --git a/assets/built/tailwind.css b/assets/built/tailwind.css index 06de4f4..7bbbb76 100644 --- a/assets/built/tailwind.css +++ b/assets/built/tailwind.css @@ -1 +1 @@ -*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}html{font-family:Pretendard,system-ui,sans-serif}body{color:var(--text);background-color:var(--bg)}.prose{color:var(--tw-prose-body);font-size:1rem;line-height:1.75}.prose-theme{--tw-prose-body:var(--text);--tw-prose-headings:var(--text);--tw-prose-lead:var(--text-soft);--tw-prose-links:var(--text);--tw-prose-bold:var(--text);--tw-prose-counters:var(--text-soft);--tw-prose-bullets:var(--border-strong);--tw-prose-hr:var(--border);--tw-prose-quotes:var(--text);--tw-prose-quote-borders:var(--border);--tw-prose-captions:var(--text-soft);--tw-prose-kbd:var(--text);--tw-prose-kbd-shadows:color-mix(in srgb,var(--text) 10%,transparent);--tw-prose-code:var(--text);--tw-prose-pre-code:#f8f5f0;--tw-prose-pre-bg:#26221f;--tw-prose-th-borders:var(--border-strong);--tw-prose-td-borders:var(--border)}.prose :where(p):not(:where(.not-prose,.not-prose *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline;text-underline-offset:.12em}.prose :where(strong):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(ol):not(:where(.not-prose,.not-prose *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker{color:var(--tw-prose-bullets)}.prose :where(li):not(:where(.not-prose,.not-prose *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li,ul>li):not(:where(.not-prose,.not-prose *)){padding-inline-start:.375em}.prose :where(hr):not(:where(.not-prose,.not-prose *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(h1):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h2):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h3):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h4):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(img,picture,video):not(:where(.not-prose,.not-prose *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where(.not-prose,.not-prose *)){display:block}.prose :where(picture>img):not(:where(.not-prose,.not-prose *)){margin-top:0;margin-bottom:0}.prose :where(figure):not(:where(.not-prose,.not-prose *)){margin-top:2em;margin-bottom:2em}.prose :where(figure>*):not(:where(.not-prose,.not-prose *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where(.not-prose,.not-prose *)):after,.prose :where(code):not(:where(.not-prose,.not-prose *)):before{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding:.857143em 1.14286em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit;color:inherit;font-size:inherit;background-color:transparent;padding:0}.prose :where(pre code):not(:where(.not-prose,.not-prose *)):after,.prose :where(pre code):not(:where(.not-prose,.not-prose *)):before{content:none}.prose :where(table):not(:where(.not-prose,.not-prose *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where(.not-prose,.not-prose *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(tbody tr):not(:where(.not-prose,.not-prose *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(th,td):not(:where(.not-prose,.not-prose *)){text-align:start;padding:.571429em}.prose :where(.prose>:first-child):not(:where(.not-prose,.not-prose *)){margin-top:0}.prose :where(.prose>:last-child):not(:where(.not-prose,.not-prose *)){margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.absolute{position:absolute}.relative{position:relative}.inset-y-0{top:0;bottom:0}.-bottom-16{bottom:-4rem}.bottom-4{bottom:1rem}.left-0{left:0}.left-3\.5{left:.875rem}.right-0{right:0}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-12{top:3rem}.top-4{top:1rem}.top-9{top:2.25rem}.bottom-0{bottom:0}.z-10{z-index:10}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.-mb-1\.5{margin-bottom:-.375rem}.-mt-0\.5{margin-top:-.125rem}.-mt-px{margin-top:-1px}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-\[12px\]{margin-bottom:12px}.mb-\[28px\]{margin-bottom:28px}.mb-\[8px\]{margin-bottom:8px}.ml-4{margin-left:1rem}.mr-1{margin-right:.25rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.-mr-0\.5{margin-right:-.125rem}.mb-2\.5{margin-bottom:.625rem}.mt-4{margin-top:1rem}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{-webkit-line-clamp:3}.line-clamp-3,.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-4{-webkit-line-clamp:4}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-\[16\/9\]{aspect-ratio:16/9}.aspect-square{aspect-ratio:1/1}.aspect-video{aspect-ratio:16/9}.size-10{width:2.5rem;height:2.5rem}.size-2{width:.5rem;height:.5rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.h-11{height:2.75rem}.h-16{height:4rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-\[18px\]{height:18px}.h-full{height:100%}.min-h-12{min-height:3rem}.min-h-8{min-height:2rem}.min-h-\[128px\]{min-height:128px}.w-1{width:.25rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-\[3px\]{width:3px}.w-full{width:100%}.min-w-0{min-width:0}.min-w-16{min-width:4rem}.min-w-\[200px\]{min-width:200px}.max-w-\[90\%\]{max-width:90%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.basis-full{flex-basis:100%}.basis-\[78\%\]{flex-basis:78%}.-translate-x-1{--tw-translate-x:-0.25rem}.-translate-x-1,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-2{--tw-translate-y:-0.5rem}.-translate-y-2,.-translate-y-4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-4{--tw-translate-y:-1rem}.translate-x-0{--tw-translate-x:0px}.translate-x-0,.translate-x-3\.5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-3\.5{--tw-translate-x:0.875rem}.translate-y-0{--tw-translate-y:0px}.rotate-180,.translate-y-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-100,.scale-75{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-75{--tw-scale-x:.75;--tw-scale-y:.75}.scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.scale-95,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize{resize:both}.snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}.snap-mandatory{--tw-scroll-snap-strictness:mandatory}.snap-start{scroll-snap-align:start}.scroll-mt-14{scroll-margin-top:3.5rem}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-1\.5{-moz-column-gap:.375rem;column-gap:.375rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-y-0\.5{row-gap:.125rem}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-brd>:not([hidden])~:not([hidden]){border-color:var(--border)}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.scroll-smooth{scroll-behavior:smooth}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.text-balance{text-wrap:balance}.rounded{border-radius:.25rem}.rounded-\[14px\]{border-radius:14px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-l-\[14px\]{border-top-left-radius:14px;border-bottom-left-radius:14px}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-lg{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.border{border-width:1px}.border-2{border-width:2px}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-l-\[3px\]{border-left-width:3px}.border-t{border-top-width:1px}.border-\[var\(--border\)\],.border-brd{border-color:var(--border)}.border-transparent{border-color:transparent}.border-typ{border-color:var(--text)}.border-b-brd{border-bottom-color:var(--border)}.border-l-transparent{border-left-color:transparent}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.bg-\[var\(--surface-muted\)\]{background-color:var(--surface-muted)}.bg-\[var\(--tag-accent\2c var\(--accent\)\)\]{background-color:var(--tag-accent,var(--accent))}.bg-accent{background-color:var(--color-accent)}.bg-bgr-tone{background-color:var(--surface-muted)}.bg-brd{background-color:var(--border)}.bg-orange-600{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.fill-current{fill:currentColor}.stroke-1{stroke-width:1}.stroke-2{stroke-width:2}.stroke-\[2\.5\]{stroke-width:2.5}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.px-0{padding-left:0;padding-right:0}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-\[14px\]{padding-top:14px;padding-bottom:14px}.py-px{padding-top:1px;padding-bottom:1px}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-0{padding-left:0}.pl-0\.5{padding-left:.125rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[0\.7rem\]{font-size:.7rem}.text-\[0\.8rem\]{font-size:.8rem}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-5{line-height:1.25rem}.leading-\[1\.125\]{line-height:1.125}.leading-\[1\.15\]{line-height:1.15}.leading-none{line-height:1}.leading-normal{line-height:1.5}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-tight{letter-spacing:-.025em}.text-\[rgba\(0\2c 0\2c 0\2c 0\.4\)\]{color:rgba(0,0,0,.4)}.text-\[var\(--text-soft\)\]{color:var(--text-soft)}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-neutral-600{--tw-text-opacity:1;color:rgb(82 82 82/var(--tw-text-opacity,1))}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-typ{color:var(--text)}.text-typ-tone{color:var(--text-soft)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-brand{--tw-text-opacity:1;color:rgb(255 68 0/var(--tw-text-opacity,1))}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur-0{--tw-blur:blur(0)}.blur-0,.brightness-75{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-75{--tw-brightness:brightness(.75)}.contrast-125{--tw-contrast:contrast(1.25)}.contrast-125,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[height\2c opacity\]{transition-property:height,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[opacity\2c visibility\]{transition-property:opacity,visibility;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[padding\]{transition-property:padding;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[transform\2c opacity\2c visibility\2c scale\]{transition-property:transform,opacity,visibility,scale;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[transform\2c opacity\2c visibility\]{transition-property:transform,opacity,visibility;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-\[cubic-bezier\(0\.22\2c 1\2c 0\.36\2c 1\)\]{transition-timing-function:cubic-bezier(.22,1,.36,1)}[x-cloak]{display:none!important}.rounded-theme{border-radius:18px}.border-brd{border-color:var(--border)}.bg-bgr-tone{background-color:var(--surface-muted)}.text-typ{color:var(--text)}.text-typ-tone{color:var(--text-soft)}.bg-accent{background:var(--color-accent)}.bg-accent\/10{background-color:color-mix(in srgb,var(--color-accent) 10%,transparent)}.gap-0\.75{gap:.1875rem}.flex-2{flex:2 1 0%}.flex-3{flex:3 1 0%}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.min-w-16{min-width:4rem}.max-w-content{max-width:var(--content-header)}.divide-brd>:not([hidden])~:not([hidden]){border-color:var(--border)}.line-clamp-1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:left-0:before{content:var(--tw-content);left:0}.before\:top-0:before{content:var(--tw-content);top:0}.before\:h-full:before{content:var(--tw-content);height:100%}.before\:bg-accent:before{content:var(--tw-content);background-color:var(--color-accent)}.before\:font-bold:before{content:var(--tw-content);font-weight:700}.before\:content-\[attr\(data-number\)\]:before{--tw-content:attr(data-number);content:var(--tw-content)}.before\:bg-accent:before{content:var(--tw-content);background:var(--color-accent)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-bottom-2:after{content:var(--tw-content);bottom:-.5rem}.after\:left-0:after{content:var(--tw-content);left:0}.after\:h-0\.5:after{content:var(--tw-content);height:.125rem}.after\:w-full:after{content:var(--tw-content);width:100%}.after\:bg-typ:after{content:var(--tw-content);background-color:var(--text)}.\*\:after\:ml-2>:after{content:var(--tw-content);margin-left:.5rem}.\*\:after\:text-brd>:after{content:var(--tw-content);color:var(--border)}.\*\:after\:content-\[\'\/\'\]>:after{--tw-content:"/";content:var(--tw-content)}.\*\:last\:after\:hidden:last-child>:after{content:var(--tw-content);display:none}.hover\:w-5:hover{width:1.25rem}.hover\:bg-\[\#f5f5f5\]:hover{--tw-bg-opacity:1;background-color:rgb(245 245 245/var(--tw-bg-opacity,1))}.hover\:bg-\[color-mix\(in_srgb\2c var\(--color-accent\)_10\%\2c transparent\)\]:hover{background-color:color-mix(in srgb,var(--color-accent) 10%,transparent)}.hover\:bg-\[var\(--surface-muted\)\]:hover,.hover\:bg-bgr-tone:hover{background-color:var(--surface-muted)}.hover\:px-3:hover{padding-left:.75rem;padding-right:.75rem}.hover\:pl-7:hover{padding-left:1.75rem}.hover\:text-accent:hover{color:var(--color-accent)}.hover\:text-typ:hover{color:var(--text)}.hover\:text-typ-tone:hover{color:var(--text-soft)}.hover\:opacity-75:hover{opacity:.75}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:bg-bgr-tone:hover{background-color:var(--surface-muted)}.hover\:text-typ:hover{color:var(--text)}.hover\:text-typ-tone:hover{color:var(--text-soft)}.hover\:text-accent:hover{color:var(--color-accent)}.focus\:ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.disabled\:opacity-40:disabled{opacity:.4}.group:hover .group-hover\:visible{visibility:visible}.group:hover .group-hover\:invisible{visibility:hidden}.group:hover .group-hover\:size-0{width:0;height:0}.group:hover .group-hover\:size-2{width:.5rem;height:.5rem}.group:hover .group-hover\:h-0{height:0}.group:hover .group-hover\:w-0{width:0}.group:hover .group-hover\:translate-x-0{--tw-translate-x:0px}.group:hover .group-hover\:translate-x-0,.group:hover .group-hover\:translate-y-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-y-full{--tw-translate-y:100%}.group:hover .group-hover\:scale-100{--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:gap-0{gap:0}.group:hover .group-hover\:rounded-full{border-radius:9999px}.group:hover .group-hover\:opacity-0{opacity:0}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:brightness-90{--tw-brightness:brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.group.error .group-\[\.error\]\:visible,.group.success .group-\[\.success\]\:visible{visibility:visible}.group.error .group-\[\.error\]\:flex,.group.loading .group-\[\.loading\]\:flex,.group.success .group-\[\.success\]\:flex{display:flex}.group.loading .group-\[\.loading\]\:hidden{display:none}.group.error .group-\[\.error\]\:translate-y-0,.group.success .group-\[\.success\]\:translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group.error .group-\[\.error\]\:opacity-100,.group.success .group-\[\.success\]\:opacity-100{opacity:1}@media (min-width:640px){.sm\:aspect-video{aspect-ratio:16/9}.sm\:size-12{width:3rem;height:3rem}.sm\:h-20{height:5rem}.sm\:w-20{width:5rem}.sm\:max-w-screen-sm{max-width:640px}.sm\:basis-\[58\%\]{flex-basis:58%}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:gap-1\.5{gap:.375rem}.sm\:gap-5{gap:1.25rem}.sm\:p-5{padding:1.25rem}.sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:px-\[max\(2vmin\2c 20px\)\]{padding-left:max(2vmin,20px);padding-right:max(2vmin,20px)}.sm\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}.sm\:py-5{padding-top:1.25rem}.sm\:pb-5,.sm\:py-5{padding-bottom:1.25rem}.sm\:pl-5{padding-left:1.25rem}.sm\:pl-6{padding-left:1.5rem}.sm\:pr-3{padding-right:.75rem}.sm\:pt-5{padding-top:1.25rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}.sm\:\*\:after\:ml-1\.5>:after{content:var(--tw-content);margin-left:.375rem}}@media (min-width:768px){.md\:invisible{visibility:hidden}.md\:bottom-0{bottom:0}.md\:top-auto{top:auto}.md\:mb-0{margin-bottom:0}.md\:mr-4{margin-right:1rem}.md\:flex{display:flex}.md\:hidden{display:none}.md\:size-10{width:2.5rem;height:2.5rem}.md\:size-7{width:1.75rem;height:1.75rem}.md\:min-h-10{min-height:2.5rem}.md\:flex-1{flex:1 1 0%}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:border-b-0{border-bottom-width:0}.md\:py-8{padding-top:2rem;padding-bottom:2rem}.md\:pb-0{padding-bottom:0}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:opacity-0{opacity:0}.md\:flex-4{flex:4 1 0%}}@media (min-width:1024px){.lg\:basis-\[38\%\]{flex-basis:38%}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:pl-0{padding-left:0}.xl\:pl-1{padding-left:.25rem}.xl\:pr-1{padding-right:.25rem}}@keyframes spin{to{transform:rotate(1turn)}}.\[\&_svg\]\:animate-spin svg{animation:spin 1s linear infinite} \ No newline at end of file +*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}html{font-family:Pretendard,system-ui,sans-serif}body{color:var(--text);background-color:var(--bg)}.prose{color:var(--tw-prose-body);font-size:1rem;line-height:1.75}.prose-theme{--tw-prose-body:var(--text);--tw-prose-headings:var(--text);--tw-prose-lead:var(--text-soft);--tw-prose-links:var(--text);--tw-prose-bold:var(--text);--tw-prose-counters:var(--text-soft);--tw-prose-bullets:var(--border-strong);--tw-prose-hr:var(--border);--tw-prose-quotes:var(--text);--tw-prose-quote-borders:var(--border);--tw-prose-captions:var(--text-soft);--tw-prose-kbd:var(--text);--tw-prose-kbd-shadows:color-mix(in srgb,var(--text) 10%,transparent);--tw-prose-code:var(--text);--tw-prose-pre-code:#f8f5f0;--tw-prose-pre-bg:#26221f;--tw-prose-th-borders:var(--border-strong);--tw-prose-td-borders:var(--border)}.prose :where(p):not(:where(.not-prose,.not-prose *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline;text-underline-offset:.12em}.prose :where(strong):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(ol):not(:where(.not-prose,.not-prose *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker{color:var(--tw-prose-bullets)}.prose :where(li):not(:where(.not-prose,.not-prose *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li,ul>li):not(:where(.not-prose,.not-prose *)){padding-inline-start:.375em}.prose :where(hr):not(:where(.not-prose,.not-prose *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(h1):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h2):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h3):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h4):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(img,picture,video):not(:where(.not-prose,.not-prose *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where(.not-prose,.not-prose *)){display:block}.prose :where(picture>img):not(:where(.not-prose,.not-prose *)){margin-top:0;margin-bottom:0}.prose :where(figure):not(:where(.not-prose,.not-prose *)){margin-top:2em;margin-bottom:2em}.prose :where(figure>*):not(:where(.not-prose,.not-prose *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where(.not-prose,.not-prose *)):after,.prose :where(code):not(:where(.not-prose,.not-prose *)):before{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding:.857143em 1.14286em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit;color:inherit;font-size:inherit;background-color:transparent;padding:0}.prose :where(pre code):not(:where(.not-prose,.not-prose *)):after,.prose :where(pre code):not(:where(.not-prose,.not-prose *)):before{content:none}.prose :where(table):not(:where(.not-prose,.not-prose *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where(.not-prose,.not-prose *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(tbody tr):not(:where(.not-prose,.not-prose *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(th,td):not(:where(.not-prose,.not-prose *)){text-align:start;padding:.571429em}.prose :where(.prose>:first-child):not(:where(.not-prose,.not-prose *)){margin-top:0}.prose :where(.prose>:last-child):not(:where(.not-prose,.not-prose *)){margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.absolute{position:absolute}.relative{position:relative}.inset-y-0{top:0;bottom:0}.-bottom-16{bottom:-4rem}.bottom-4{bottom:1rem}.left-0{left:0}.left-3\.5{left:.875rem}.right-0{right:0}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-12{top:3rem}.top-4{top:1rem}.top-9{top:2.25rem}.bottom-0{bottom:0}.z-10{z-index:10}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.-mb-1\.5{margin-bottom:-.375rem}.-mt-0\.5{margin-top:-.125rem}.-mt-px{margin-top:-1px}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-\[12px\]{margin-bottom:12px}.mb-\[28px\]{margin-bottom:28px}.mb-\[8px\]{margin-bottom:8px}.ml-4{margin-left:1rem}.mr-1{margin-right:.25rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.-mr-0\.5{margin-right:-.125rem}.mb-2\.5{margin-bottom:.625rem}.mt-4{margin-top:1rem}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{-webkit-line-clamp:3}.line-clamp-3,.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-4{-webkit-line-clamp:4}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-\[16\/9\]{aspect-ratio:16/9}.aspect-square{aspect-ratio:1/1}.aspect-video{aspect-ratio:16/9}.size-10{width:2.5rem;height:2.5rem}.size-2{width:.5rem;height:.5rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-1\.5{width:.375rem;height:.375rem}.size-3{width:.75rem;height:.75rem}.h-11{height:2.75rem}.h-16{height:4rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-\[18px\]{height:18px}.h-full{height:100%}.min-h-12{min-height:3rem}.min-h-8{min-height:2rem}.min-h-\[128px\]{min-height:128px}.min-h-\[2\.2rem\]{min-height:2.2rem}.w-1{width:.25rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-\[3px\]{width:3px}.w-full{width:100%}.w-\[18px\]{width:18px}.min-w-0{min-width:0}.min-w-16{min-width:4rem}.min-w-\[200px\]{min-width:200px}.max-w-\[90\%\]{max-width:90%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.basis-full{flex-basis:100%}.basis-\[78\%\]{flex-basis:78%}.-translate-x-1{--tw-translate-x:-0.25rem}.-translate-x-1,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-2{--tw-translate-y:-0.5rem}.-translate-y-2,.-translate-y-4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-4{--tw-translate-y:-1rem}.translate-x-0{--tw-translate-x:0px}.translate-x-0,.translate-x-3\.5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-3\.5{--tw-translate-x:0.875rem}.translate-y-0{--tw-translate-y:0px}.rotate-180,.translate-y-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-100,.scale-75{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-75{--tw-scale-x:.75;--tw-scale-y:.75}.scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.scale-95,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize{resize:both}.snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}.snap-mandatory{--tw-scroll-snap-strictness:mandatory}.snap-start{scroll-snap-align:start}.scroll-mt-14{scroll-margin-top:3.5rem}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-1\.5{-moz-column-gap:.375rem;column-gap:.375rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-y-0\.5{row-gap:.125rem}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-brd>:not([hidden])~:not([hidden]){border-color:var(--border)}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.scroll-smooth{scroll-behavior:smooth}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.text-balance{text-wrap:balance}.rounded{border-radius:.25rem}.rounded-\[14px\]{border-radius:14px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-\[8px\]{border-radius:8px}.rounded-l-\[14px\]{border-top-left-radius:14px;border-bottom-left-radius:14px}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-lg{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.border{border-width:1px}.border-2{border-width:2px}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-l-\[3px\]{border-left-width:3px}.border-t{border-top-width:1px}.border-\[var\(--border\)\],.border-brd{border-color:var(--border)}.border-transparent{border-color:transparent}.border-typ{border-color:var(--text)}.border-b-brd{border-bottom-color:var(--border)}.border-l-transparent{border-left-color:transparent}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.bg-\[var\(--surface-muted\)\]{background-color:var(--surface-muted)}.bg-\[var\(--tag-accent\2c var\(--accent\)\)\]{background-color:var(--tag-accent,var(--accent))}.bg-accent{background-color:var(--color-accent)}.bg-bgr-tone{background-color:var(--surface-muted)}.bg-brd{background-color:var(--border)}.bg-orange-600{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.fill-current{fill:currentColor}.stroke-1{stroke-width:1}.stroke-2{stroke-width:2}.stroke-\[2\.5\]{stroke-width:2.5}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.px-0{padding-left:0;padding-right:0}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-\[14px\]{padding-top:14px;padding-bottom:14px}.py-px{padding-top:1px;padding-bottom:1px}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-0{padding-left:0}.pl-0\.5{padding-left:.125rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[0\.7rem\]{font-size:.7rem}.text-\[0\.8rem\]{font-size:.8rem}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-5{line-height:1.25rem}.leading-\[1\.125\]{line-height:1.125}.leading-\[1\.15\]{line-height:1.15}.leading-none{line-height:1}.leading-normal{line-height:1.5}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-tight{letter-spacing:-.025em}.text-\[rgba\(0\2c 0\2c 0\2c 0\.4\)\]{color:rgba(0,0,0,.4)}.text-\[var\(--text-soft\)\]{color:var(--text-soft)}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-neutral-600{--tw-text-opacity:1;color:rgb(82 82 82/var(--tw-text-opacity,1))}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-typ{color:var(--text)}.text-typ-tone{color:var(--text-soft)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-brand{--tw-text-opacity:1;color:rgb(255 68 0/var(--tw-text-opacity,1))}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur-0{--tw-blur:blur(0)}.blur-0,.brightness-75{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-75{--tw-brightness:brightness(.75)}.contrast-125{--tw-contrast:contrast(1.25)}.contrast-125,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[height\2c opacity\]{transition-property:height,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[opacity\2c visibility\]{transition-property:opacity,visibility;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[padding\]{transition-property:padding;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[transform\2c opacity\2c visibility\2c scale\]{transition-property:transform,opacity,visibility,scale;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[transform\2c opacity\2c visibility\]{transition-property:transform,opacity,visibility;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-\[cubic-bezier\(0\.22\2c 1\2c 0\.36\2c 1\)\]{transition-timing-function:cubic-bezier(.22,1,.36,1)}[x-cloak]{display:none!important}.rounded-theme{border-radius:18px}.border-brd{border-color:var(--border)}.bg-bgr-tone{background-color:var(--surface-muted)}.text-typ{color:var(--text)}.text-typ-tone{color:var(--text-soft)}.bg-accent{background:var(--color-accent)}.bg-accent\/10{background-color:color-mix(in srgb,var(--color-accent) 10%,transparent)}.gap-0\.75{gap:.1875rem}.flex-2{flex:2 1 0%}.flex-3{flex:3 1 0%}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.min-w-16{min-width:4rem}.max-w-content{max-width:var(--content-header)}.divide-brd>:not([hidden])~:not([hidden]){border-color:var(--border)}.line-clamp-1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:left-0:before{content:var(--tw-content);left:0}.before\:top-0:before{content:var(--tw-content);top:0}.before\:h-full:before{content:var(--tw-content);height:100%}.before\:bg-accent:before{content:var(--tw-content);background-color:var(--color-accent)}.before\:font-bold:before{content:var(--tw-content);font-weight:700}.before\:content-\[attr\(data-number\)\]:before{--tw-content:attr(data-number);content:var(--tw-content)}.before\:bg-accent:before{content:var(--tw-content);background:var(--color-accent)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-bottom-2:after{content:var(--tw-content);bottom:-.5rem}.after\:left-0:after{content:var(--tw-content);left:0}.after\:h-0\.5:after{content:var(--tw-content);height:.125rem}.after\:w-full:after{content:var(--tw-content);width:100%}.after\:bg-typ:after{content:var(--tw-content);background-color:var(--text)}.\*\:after\:ml-2>:after{content:var(--tw-content);margin-left:.5rem}.\*\:after\:text-brd>:after{content:var(--tw-content);color:var(--border)}.\*\:after\:content-\[\'\/\'\]>:after{--tw-content:"/";content:var(--tw-content)}.\*\:last\:after\:hidden:last-child>:after{content:var(--tw-content);display:none}.hover\:w-5:hover{width:1.25rem}.hover\:bg-\[\#f5f5f5\]:hover{--tw-bg-opacity:1;background-color:rgb(245 245 245/var(--tw-bg-opacity,1))}.hover\:bg-\[color-mix\(in_srgb\2c var\(--color-accent\)_10\%\2c transparent\)\]:hover{background-color:color-mix(in srgb,var(--color-accent) 10%,transparent)}.hover\:bg-\[var\(--surface-muted\)\]:hover,.hover\:bg-bgr-tone:hover{background-color:var(--surface-muted)}.hover\:px-3:hover{padding-left:.75rem;padding-right:.75rem}.hover\:pl-7:hover{padding-left:1.75rem}.hover\:text-accent:hover{color:var(--color-accent)}.hover\:text-typ:hover{color:var(--text)}.hover\:text-typ-tone:hover{color:var(--text-soft)}.hover\:opacity-75:hover{opacity:.75}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:bg-bgr-tone:hover{background-color:var(--surface-muted)}.hover\:text-typ:hover{color:var(--text)}.hover\:text-typ-tone:hover{color:var(--text-soft)}.hover\:text-accent:hover{color:var(--color-accent)}.focus\:ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.disabled\:opacity-40:disabled{opacity:.4}.group:hover .group-hover\:visible{visibility:visible}.group:hover .group-hover\:invisible{visibility:hidden}.group:hover .group-hover\:size-0{width:0;height:0}.group:hover .group-hover\:size-2{width:.5rem;height:.5rem}.group:hover .group-hover\:h-0{height:0}.group:hover .group-hover\:w-0{width:0}.group:hover .group-hover\:translate-x-0{--tw-translate-x:0px}.group:hover .group-hover\:translate-x-0,.group:hover .group-hover\:translate-y-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-y-full{--tw-translate-y:100%}.group:hover .group-hover\:scale-100{--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:gap-0{gap:0}.group:hover .group-hover\:rounded-full{border-radius:9999px}.group:hover .group-hover\:opacity-0{opacity:0}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:brightness-90{--tw-brightness:brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.group.error .group-\[\.error\]\:visible,.group.success .group-\[\.success\]\:visible{visibility:visible}.group.error .group-\[\.error\]\:flex,.group.loading .group-\[\.loading\]\:flex,.group.success .group-\[\.success\]\:flex{display:flex}.group.loading .group-\[\.loading\]\:hidden{display:none}.group.error .group-\[\.error\]\:translate-y-0,.group.success .group-\[\.success\]\:translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group.error .group-\[\.error\]\:opacity-100,.group.success .group-\[\.success\]\:opacity-100{opacity:1}@media (min-width:640px){.sm\:aspect-video{aspect-ratio:16/9}.sm\:size-12{width:3rem;height:3rem}.sm\:h-20{height:5rem}.sm\:w-20{width:5rem}.sm\:max-w-screen-sm{max-width:640px}.sm\:basis-\[58\%\]{flex-basis:58%}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:gap-1\.5{gap:.375rem}.sm\:gap-5{gap:1.25rem}.sm\:p-5{padding:1.25rem}.sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:px-\[max\(2vmin\2c 20px\)\]{padding-left:max(2vmin,20px);padding-right:max(2vmin,20px)}.sm\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}.sm\:py-5{padding-top:1.25rem}.sm\:pb-5,.sm\:py-5{padding-bottom:1.25rem}.sm\:pl-5{padding-left:1.25rem}.sm\:pl-6{padding-left:1.5rem}.sm\:pr-3{padding-right:.75rem}.sm\:pt-5{padding-top:1.25rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}.sm\:\*\:after\:ml-1\.5>:after{content:var(--tw-content);margin-left:.375rem}}@media (min-width:768px){.md\:invisible{visibility:hidden}.md\:bottom-0{bottom:0}.md\:top-auto{top:auto}.md\:mb-0{margin-bottom:0}.md\:mr-4{margin-right:1rem}.md\:flex{display:flex}.md\:hidden{display:none}.md\:size-10{width:2.5rem;height:2.5rem}.md\:size-7{width:1.75rem;height:1.75rem}.md\:min-h-10{min-height:2.5rem}.md\:flex-1{flex:1 1 0%}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:border-b-0{border-bottom-width:0}.md\:py-8{padding-top:2rem;padding-bottom:2rem}.md\:pb-0{padding-bottom:0}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:opacity-0{opacity:0}.md\:flex-4{flex:4 1 0%}}@media (min-width:1024px){.lg\:basis-\[38\%\]{flex-basis:38%}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:pl-0{padding-left:0}.xl\:pl-1{padding-left:.25rem}.xl\:pr-1{padding-right:.25rem}}.\[\&\>\*\:not\(\:last-child\)\]\:after\:ml-2>:not(:last-child):after{content:var(--tw-content);margin-left:.5rem}.\[\&\>\*\:not\(\:last-child\)\]\:after\:text-brd>:not(:last-child):after{content:var(--tw-content);color:var(--border)}.\[\&\>\*\:not\(\:last-child\)\]\:after\:content-\[\'\/\'\]>:not(:last-child):after{--tw-content:"/";content:var(--tw-content)}@media (min-width:640px){.sm\:\[\&\>\*\:not\(\:last-child\)\]\:after\:ml-1\.5>:not(:last-child):after{content:var(--tw-content);margin-left:.375rem}}@keyframes spin{to{transform:rotate(1turn)}}.\[\&_svg\]\:animate-spin svg{animation:spin 1s linear infinite} \ No newline at end of file diff --git a/assets/built/theme.js b/assets/built/theme.js index 05e324e..96a5274 100644 --- a/assets/built/theme.js +++ b/assets/built/theme.js @@ -153,28 +153,6 @@ syncLeftSidebarState(); - var siteMain = document.querySelector(".site-main"); - var sidebarNodes = document.querySelectorAll(".sidebar--left, .sidebar--right"); - - function shouldProxySidebarWheel() { - return !tabletMedia.matches && !!siteMain; - } - - sidebarNodes.forEach(function (sidebar) { - sidebar.addEventListener("wheel", function (event) { - if (!shouldProxySidebarWheel()) { - return; - } - - event.preventDefault(); - siteMain.scrollBy({ - top: event.deltaY, - left: 0, - behavior: "auto" - }); - }, { passive: false }); - }); - var tabRoot = document.querySelector("[data-tabs]"); if (tabRoot) { var triggers = tabRoot.querySelectorAll("[data-tab-trigger]"); @@ -371,6 +349,64 @@ syncUserMenuToggles(); + var recommendationsPortalTrigger = document.querySelector("[data-portal='recommendations']"); + var recommendationsPortalTitle = recommendationsPortalTrigger ? recommendationsPortalTrigger.getAttribute("data-portal-title") : ""; + var recommendationsPortalDescription = recommendationsPortalTrigger ? recommendationsPortalTrigger.getAttribute("data-portal-description") : ""; + + function getPortalDocuments() { + var docs = [document]; + + document.querySelectorAll("iframe").forEach(function (frame) { + try { + if (frame.contentDocument) { + docs.push(frame.contentDocument); + } + } catch (error) {} + }); + + return docs; + } + + function applyRecommendationsPortalCopy() { + if (!recommendationsPortalTitle && !recommendationsPortalDescription) { + return false; + } + + var hasPatched = false; + + getPortalDocuments().forEach(function (docRoot) { + var portalTitle = docRoot.querySelector(".gh-portal-main-title"); + var portalDescription = docRoot.querySelector(".gh-portal-recommendations-description"); + + if (portalTitle && recommendationsPortalTitle) { + portalTitle.textContent = recommendationsPortalTitle; + hasPatched = true; + } + + if (portalDescription && recommendationsPortalDescription) { + portalDescription.textContent = recommendationsPortalDescription; + hasPatched = true; + } + }); + + return hasPatched; + } + + if (recommendationsPortalTrigger && (recommendationsPortalTitle || recommendationsPortalDescription)) { + recommendationsPortalTrigger.addEventListener("click", function () { + applyRecommendationsPortalCopy(); + var attempts = 0; + var maxAttempts = 20; + var retryTimer = window.setInterval(function () { + attempts += 1; + var done = applyRecommendationsPortalCopy(); + if (done || attempts >= maxAttempts) { + window.clearInterval(retryTimer); + } + }, 100); + }); + } + function updateLoadMoreState(pagination, nextUrl, loading) { var trigger = pagination.querySelector("[data-load-more-trigger]"); if (!trigger) { diff --git a/docs/deploy.md b/docs/deploy.md index bf17e05..49b8453 100644 --- a/docs/deploy.md +++ b/docs/deploy.md @@ -1,7 +1,7 @@ # 배포 가이드 ## 현재 버전 -- `v0.1.40` +- `v0.1.41` ## Git 기본 설정 - 저장소 작성자 정보는 아래 값으로 통일한다. diff --git a/docs/history.md b/docs/history.md index 9c6e765..aed7cb7 100644 --- a/docs/history.md +++ b/docs/history.md @@ -1,5 +1,8 @@ # 의사결정 이력 +## 2026-04-16 v0.1.41 +Ghost Portal Recommendations 모달의 제목/설명은 렌더링 시점이 일정하지 않고, 경우에 따라 iframe 문서 내부에서 생성되어 기존 문서 단일 선택자 접근으로는 치환이 실패했다. 또한 이전 구현은 전역 `MutationObserver`를 상시 감시로 두고 있어 페이지 체감 지연 가능성이 있었다. 그래서 클릭 시점에 한정해 메인 문서와 접근 가능한 iframe 문서를 함께 탐색하고, 짧은 재시도 구간에서만 텍스트를 치환하는 방식으로 변경했다. 이 방식은 치환 성공률을 높이면서도 상시 관찰 비용을 제거해 안정성을 높인다. + ## 2026-04-16 v0.1.40 홈 메인에서 4개 탭을 유지하면 원본 화면과 다르게 상단 컨트롤이 과해지고, 실제 요구사항인 Featured 강조 흐름이 약해진다. 그래서 탭형 전환 UI를 홈 진입 구조에서 제거하고, Featured가 있을 때만 수평 슬라이드로 노출한 뒤 Latest 리스트를 바로 이어 붙이는 구성으로 정리했다. 이 방식은 원본의 정보 우선순위(Featured -> Latest)를 그대로 따르면서 Ghost `featured:true` 데이터도 자연스럽게 재사용할 수 있다. diff --git a/docs/map.md b/docs/map.md index b0acb6e..34e2c5e 100644 --- a/docs/map.md +++ b/docs/map.md @@ -1,7 +1,7 @@ # 파일-화면 매핑 가이드 ## 현재 버전 -- `v0.1.40` +- `v0.1.41` ## 공통 레이아웃 - [default.hbs](/Users/bicute/Desktop/UGREEN/GHOST%20THEME/default.hbs): 전체 3열 셸, 1296px 공통 폭 계산, 공통 자산 로드 @@ -11,7 +11,7 @@ - [tags-index.hbs](/Users/bicute/Desktop/UGREEN/GHOST%20THEME/tags-index.hbs): `/tags/` 커스텀 라우트용 태그 디렉터리 - [authors-index.hbs](/Users/bicute/Desktop/UGREEN/GHOST%20THEME/authors-index.hbs): `/authors/` 커스텀 라우트용 작성자 디렉터리 - [partials/site/topbar.hbs](/Users/bicute/Desktop/UGREEN/GHOST%20THEME/partials/site/topbar.hbs): 상단 3열 헤더, 중앙 검색, 좌측 사이드바 토글 -- [partials/site/sidebar-right.hbs](/Users/bicute/Desktop/UGREEN/GHOST%20THEME/partials/site/sidebar-right.hbs): 우측 287px 사이드바, Tailwind 기반 작성자/구독/추천/푸터 구성 +- [partials/site/sidebar-right.hbs](/Users/bicute/Desktop/UGREEN/GHOST%20THEME/partials/site/sidebar-right.hbs): 우측 287px 사이드바, Ghost Recommendations 기반 추천 링크/구독/푸터 구성 ## 홈 및 목록 - [home.hbs](/Users/bicute/Desktop/UGREEN/GHOST%20THEME/home.hbs): 메인 홈 diff --git a/docs/spec.md b/docs/spec.md index 3337d3a..97b63f6 100644 --- a/docs/spec.md +++ b/docs/spec.md @@ -1,7 +1,7 @@ # 기술 명세 ## 현재 버전 -- `v0.1.40` +- `v0.1.41` ## 테마 개요 - Ghost `v5` 대응 커스텀 테마 @@ -27,6 +27,8 @@ - `tags-index.hbs`, `authors-index.hbs`는 Ghost `routes.yaml` 커스텀 라우트로 `/tags/`, `/authors/`에 연결됨 - 로컬 개발 환경의 실제 라우트 설정은 `.docker/ghost/content/settings/routes.yaml`을 기준으로 사용함 - 홈 메인 피드는 히어로, Featured 수평 슬라이드, Latest 리스트 구성을 사용함 +- 우측 사이드바 `Recommended` 섹션은 Ghost `recommendations` 데이터를 우선 사용하며, 항목별 외부 링크와 favicon 표시를 지원함 +- Recommendations Portal 모달의 제목/설명은 트리거 버튼의 `data-portal-title`, `data-portal-description` 값으로 오픈 시점에 동기화함 - 리스트형 `post-card`는 Tailwind 유틸리티 중심 마크업으로 구성되며, 썸네일은 `aspect-square sm:aspect-video` 비율을 사용 - 각 카드 항목은 `border-b border-brd` 구분선을 유지하고, 콘텐츠 래퍼는 `min-w-0` 기준으로 줄바꿈 폭을 제어 - 포스트 상세 헤더는 제목, 메타, 공유 버튼, 대표 이미지를 Tailwind 유틸리티 중심 마크업으로 구성하고 상단 단일 태그 라벨은 표시하지 않음 diff --git a/docs/update.md b/docs/update.md index bbd7683..b9783ba 100644 --- a/docs/update.md +++ b/docs/update.md @@ -1,5 +1,11 @@ # 업데이트 로그 +## v0.1.41 - 2026-04-16 +- `package.json` 버전을 `0.1.41`로 증가. +- `docs/spec.md`, `docs/map.md`, `docs/deploy.md` 현재 버전을 `v0.1.41`로 동기화. +- `docs/history.md`에 `v0.1.41` 의사결정 이력(Portal 문구 치환 안정화) 추가. +- `assets/built/theme.js` Portal 문구 치환 로직을 메인 문서+iframe 탐색 기반 재시도 방식으로 보정하고, 상시 `MutationObserver`를 제거해 지연 가능성을 완화. + ## v0.1.40 - 2026-04-16 - 문서 버전 표기를 `v0.1.40`으로 정합성 수정. - `docs/history.md` 의사결정 이력 최신 버전 항목 추가. @@ -24,6 +30,21 @@ - `partials/lists/post-feed.hbs` Featured 카드에서 썸네일 미존재 시 텍스트를 검은색으로 보정하고, 썸네일 카드와 동일한 라디우스/테두리 형태로 통일. - `assets/built/screen.css` Featured 가로 슬라이드 스크롤바 비노출 처리 추가. - `partials/site/sidebar-right.hbs` 우측 사이드바를 세로 플렉스 구조로 보정해 하단 footer가 화면 하단에 고정되도록 수정. +- `assets/built/screen.css` 좌측 Home pages 하위 링크의 배지/hover 동작을 원본처럼 사각 배지→원형 전환 및 현재 페이지 accent 표시로 보정. +- `assets/built/screen.css`, `assets/built/theme.js` 데스크톱 스크롤을 본문 전용 내부 스크롤에서 문서 스크롤로 전환해 스크롤바가 브라우저 우측에 표시되도록 정리. +- `assets/built/screen.css` 현재 활성화된 좌측 하위 메뉴 hover 시 배지가 회색으로 바뀌지 않고 accent 색상을 유지하도록 우선순위 보정. +- `assets/built/screen.css` 그리드 컨테이너 `align-items`를 보정해 사이드바 sticky 고정을 안정화하고, 스크롤 시 사이드바 동반 이동/푸터 이탈 현상을 완화. +- `assets/built/screen.css` `h-full` 클래스 우선순위로 깨지던 사이드바 뷰포트 고정을 `sidebar.sidebar--*` 선택자와 높이 보정으로 수정해 footer/nav가 화면 하단에 유지되도록 보정. +- `assets/built/screen.css` 하위 메뉴 hover 비활성 선택자에서 `a:not(.nav-current)` 조건을 제거해 활성 항목 hover 시 accent 배지가 회색으로 덮이지 않도록 수정. +- `partials/lists/post-items.hbs` 본문 요약 유무와 길이에 관계없이 카드 콘텐츠 높이가 균일하도록 콘텐츠 영역 높이/요약 최소 높이를 보정. +- `partials/site/sidebar-right.hbs` Recommended 섹션을 featured 글 목록에서 Ghost `recommendations` 데이터 기반 외부 링크 목록으로 전환하고, 항목별 favicon/타이틀 렌더링을 추가. +- `docs/spec.md`, `docs/map.md` 추천 섹션 데이터 소스 변경 기준으로 문서 정합성 갱신. +- `partials/site/sidebar-right.hbs` Recommended 목록 렌더링을 `{{get}}` 호출 대신 `data-recommendations` 기반 Portal 자동 주입 방식으로 전환. +- `partials/site/sidebar-right.hbs`, `partials/recommendations.hbs` Recommended를 공식 `{{recommendations}}` 헬퍼 기반 렌더링으로 전환하고 커스텀 recommendations partial을 추가. +- `partials/lists/post-items.hbs` 메타 구분자(`/`)를 직접 자식 선택자 기반으로 보정해 마지막 항목 뒤에는 표시되지 않도록 수정. +- `partials/recommendations.hbs` 추천 favicon 크기/라디우스를 원본 기준(`18px`, `8px`)으로 보정. +- `partials/site/sidebar-right.hbs`, `assets/built/theme.js` Portal Recommendations 모달이 열릴 때 제목/설명을 버튼 데이터 속성(`발견하기`) 기준으로 치환하도록 보정. +- `assets/built/theme.js` Portal 문구 치환 로직을 메인 문서+iframe 탐색 기반 재시도 방식으로 보정하고, 상시 `MutationObserver`를 제거해 지연 가능성을 완화. ## v0.1.39 - 2026-04-16 - `tags-index.hbs` 태그 카드 목록 마크업을 원본(Thred) 구조 기준으로 변환 수정. diff --git a/package.json b/package.json index e4a577c..31cde4f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ghost-theme-thred-clone", - "version": "0.1.40", + "version": "0.1.41", "private": true, "description": "A Ghost theme inspired by the Thred reference layout.", "keywords": [ diff --git a/partials/home/hero.hbs b/partials/home/hero.hbs index 900912a..fdb0c7f 100644 --- a/partials/home/hero.hbs +++ b/partials/home/hero.hbs @@ -4,9 +4,7 @@

Ideas published for meaningful conversation, discussed and shaped by the community

- {{#if @site.description}} -

{{@site.description}}

- {{/if}} +

A modern Ghost theme for curated, community-driven publishing, where members join the conversation.

Personal information diff --git a/partials/lists/post-feed.hbs b/partials/lists/post-feed.hbs index e4ffa1d..826f93d 100644 --- a/partials/lists/post-feed.hbs +++ b/partials/lists/post-feed.hbs @@ -29,7 +29,7 @@