/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.flex{display:flex}}:root{--bg:#fff5fa;--white:#fff;--pink:#f472b6;--pink-deep:#db2777;--pink-pale:#fce7f3;--pink-mid:#fbcfe8;--pink-border:#f9a8d4;--lavender:#f5f0ff;--lavender-mid:#e9d5ff;--lavender-deep:#a78bfa;--text:#4a1942;--text-mid:#9d5884;--text-light:#c4879a;--card-shadow:#f472b61f}html{scroll-behavior:smooth}body{background-color:var(--bg);color:var(--text);background-image:radial-gradient(circle at 15% 20%,#fce7f399 0,#0000 45%),radial-gradient(circle at 85% 70%,#e9d5ff80 0,#0000 45%);background-attachment:fixed;min-height:100vh;font-family:Noto Sans JP,sans-serif;font-weight:300;line-height:1.8}.site-header{background:var(--white);z-index:100;border-bottom:2px solid var(--pink-mid);position:sticky;top:0;box-shadow:0 2px 16px #f472b61a}.header-inner{justify-content:space-between;max-width:1100px;height:64px;margin:0 auto;padding:0 2rem}.header-inner,.site-logo{align-items:center;display:flex}.site-logo{color:var(--pink-deep);letter-spacing:.08em;gap:8px;font-family:Noto Serif JP,serif;font-size:1.05rem;font-weight:500;text-decoration:none}.site-logo:before{content:"✿";color:var(--pink);font-size:1rem}.site-nav,.site-nav a{display:flex}.site-nav a{color:var(--text-mid);letter-spacing:.1em;align-items:center;height:64px;padding:0 1.25rem;font-size:.8rem;font-weight:300;text-decoration:none;transition:color .2s;position:relative}.site-nav a:after{content:"";background:var(--pink);border-radius:99px;height:2px;transition:transform .2s;position:absolute;bottom:0;left:1rem;right:1rem;transform:scaleX(0)}.site-nav a:hover{color:var(--pink-deep)}.site-nav a:hover:after{transform:scaleX(1)}.notice-bar{background:linear-gradient(90deg,var(--pink-mid),var(--lavender-mid));text-align:center;color:var(--text);letter-spacing:.06em;padding:.65rem 2rem;font-size:.8rem}.hero{text-align:center;border-bottom:1px solid var(--pink-mid);background:linear-gradient(135deg,#fff0f7,#f8eeff);padding:5.5rem 2rem 4.5rem;position:relative;overflow:hidden}.hero:before{content:"✿";color:#f472b60f;font-size:12rem;top:-3rem;left:-2rem}.hero:after,.hero:before{pointer-events:none;line-height:1;position:absolute}.hero:after{content:"❀";color:#a78bfa12;font-size:10rem;bottom:-2rem;right:-1rem}.hero-eyebrow{letter-spacing:.25em;color:var(--pink);text-transform:uppercase;z-index:1;justify-content:center;align-items:center;gap:.6rem;margin-bottom:1.2rem;font-size:.72rem;display:flex;position:relative}.hero-eyebrow:after,.hero-eyebrow:before{content:"✦";opacity:.7;font-size:.55rem}.hero-title{color:var(--text);letter-spacing:.06em;margin-bottom:1.25rem;font-family:Noto Serif JP,serif;font-size:clamp(1.8rem,5vw,3rem);font-weight:500;line-height:1.45}.hero-desc,.hero-title{z-index:1;position:relative}.hero-desc{color:var(--text-mid);max-width:480px;margin:0 auto;font-size:.88rem;line-height:2}.hero-deco{z-index:1;justify-content:center;align-items:center;gap:8px;margin-top:2.5rem;display:flex;position:relative}.hero-deco-dot{background:var(--pink-mid);border-radius:50%;width:6px;height:6px}.hero-deco-dot.active{background:var(--pink)}.page-wrap{grid-template-columns:1fr 300px;gap:3.5rem;max-width:1100px;margin:0 auto;padding:3.5rem 2rem;display:grid}@media (max-width:768px){.page-wrap{grid-template-columns:1fr}}.section-heading{letter-spacing:.2em;color:var(--pink);text-transform:uppercase;align-items:center;gap:.75rem;margin-bottom:2rem;font-size:.72rem;display:flex}.section-heading:before{content:"✿";font-size:.9rem}.section-heading:after{content:"";background:linear-gradient(90deg,var(--pink-border),transparent);flex:1;height:1px}.posts-list{flex-direction:column;gap:1.75rem;display:flex}.post-card{background:var(--white);box-shadow:0 4px 20px var(--card-shadow);border:1px solid var(--pink-border);border-radius:16px;transition:transform .25s,box-shadow .25s;overflow:hidden}.post-card:hover{transform:translateY(-4px);box-shadow:0 10px 32px #f472b633}.post-card-inner{padding:1.75rem 2rem}.post-card-meta{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.category-badge{letter-spacing:.08em;background:var(--pink-pale);color:var(--pink-deep);white-space:nowrap;border:1px solid var(--pink-border);border-radius:99px;padding:.25rem .85rem;font-size:.7rem}.category-badge.sage{background:var(--lavender);color:var(--lavender-deep);border-color:var(--lavender-mid)}.category-badge.brown{color:var(--text-mid);background:#fff9f0;border-color:#f9e8d0}.post-date{color:var(--text-light);letter-spacing:.08em;font-size:.75rem}.post-card-title{color:var(--text);margin-bottom:.75rem;font-family:Noto Serif JP,serif;font-size:1.15rem;font-weight:400;line-height:1.65;text-decoration:none;transition:color .2s;display:block}.post-card-title:hover{color:var(--pink-deep)}.post-card-excerpt{color:var(--text-mid);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.85rem;line-height:1.9;display:-webkit-box;overflow:hidden}.post-card-footer{border-top:1px solid var(--pink-mid);justify-content:flex-end;padding:.9rem 2rem;display:flex}.read-more{color:var(--pink);letter-spacing:.1em;align-items:center;gap:.4rem;font-size:.78rem;text-decoration:none;transition:gap .2s,color .2s;display:flex}.read-more:hover{color:var(--pink-deep);gap:.7rem}.sidebar{flex-direction:column;gap:2rem;display:flex}.sidebar-card{background:var(--white);border:1px solid var(--pink-border);box-shadow:0 4px 16px var(--card-shadow);border-radius:16px;overflow:hidden}.sidebar-card-head{background:linear-gradient(135deg,var(--pink) 0,var(--lavender-deep) 100%);padding:.85rem 1.25rem}.sidebar-card-head h3{letter-spacing:.2em;color:#fff;text-transform:uppercase;font-size:.72rem}.sidebar-card-body{padding:1.25rem}.profile-icon{background:linear-gradient(135deg,var(--pink-pale),var(--lavender));border:2px solid var(--pink-border);border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;margin-bottom:1rem;font-size:1.6rem;display:flex}.profile-name{color:var(--text);margin-bottom:.4rem;font-family:Noto Serif JP,serif;font-size:.9rem}.profile-bio{color:var(--text-mid);font-size:.8rem;line-height:1.9}.category-list{flex-direction:column;gap:.4rem;list-style:none;display:flex}.category-list li a{color:var(--text-mid);border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .6rem;font-size:.84rem;text-decoration:none;transition:background .15s,color .15s;display:flex}.category-list li a:hover{background:var(--pink-pale);color:var(--pink-deep)}.category-list li a:before{content:"♡";color:var(--pink);font-size:.7rem}.article-wrap{max-width:800px;margin:0 auto;padding:3rem 2rem}.article-header{border-bottom:1px solid var(--pink-mid);margin-bottom:2.5rem;padding-bottom:2rem}.article-meta{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.article-title{color:var(--text);font-family:Noto Serif JP,serif;font-size:clamp(1.4rem,3vw,2rem);font-weight:500;line-height:1.55}.article-body{color:var(--text);font-size:.95rem;line-height:2.1}.article-body p{margin-bottom:1.5em}.article-back{border-top:1px solid var(--pink-mid);margin-top:3rem;padding-top:2rem}.back-link{color:var(--pink);letter-spacing:.08em;align-items:center;gap:.4rem;font-size:.82rem;text-decoration:none;display:flex}.back-link:hover{color:var(--pink-deep)}.site-footer{color:#fff0fa99;border-top:3px solid var(--pink);background:linear-gradient(135deg,#3d1240,#1e0a2e);margin-top:5rem;padding:3rem 2rem}.footer-inner{text-align:center;max-width:1100px;margin:0 auto}.footer-logo{color:#fff0fae6;margin-bottom:.5rem;font-family:Noto Serif JP,serif;font-size:1rem}.footer-desc{margin-bottom:1.5rem;font-size:.78rem;line-height:1.8}.footer-links{flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-bottom:1.5rem;display:flex}.footer-links a{color:#fff0fa73;font-size:.78rem;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--pink)}.footer-deco{justify-content:center;align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.footer-deco-line{background:#f472b64d;width:60px;height:1px}.footer-deco-mark{color:var(--pink);font-size:.85rem}.footer-copy{color:#fff0fa40;font-size:.72rem}.admin-wrap{max-width:1000px;margin:0 auto;padding:2.5rem 2rem}.admin-header{border-bottom:2px solid var(--pink-mid);justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.25rem;display:flex}.admin-title{color:var(--text);font-family:Noto Serif JP,serif;font-size:1.4rem;font-weight:500}.btn{cursor:pointer;letter-spacing:.05em;border:none;border-radius:99px;align-items:center;gap:.4rem;padding:.6rem 1.4rem;font-family:Noto Sans JP,sans-serif;font-size:.85rem;font-weight:400;text-decoration:none;transition:opacity .2s,transform .15s,box-shadow .2s;display:inline-flex}.btn:hover{opacity:.88;transform:translateY(-1px);box-shadow:0 4px 12px #f472b64d}.btn:active{transform:translateY(0)}.btn-primary{background:linear-gradient(135deg,var(--pink) 0,var(--lavender-deep) 100%);color:#fff}.btn-secondary{background:var(--pink-pale);color:var(--pink-deep);border:1px solid var(--pink-border)}.btn-danger{color:#fff;background:#dc2626}.btn-sm{padding:.35rem .9rem;font-size:.78rem}.admin-table-wrap{background:var(--white);border:1px solid var(--pink-border);box-shadow:0 4px 20px var(--card-shadow);border-radius:16px;overflow:hidden}.admin-table{border-collapse:collapse;width:100%}.admin-table th{background:var(--pink-pale);text-align:left;letter-spacing:.1em;color:var(--pink-deep);padding:.8rem 1.25rem;font-size:.75rem;font-weight:400}.admin-table td{border-top:1px solid var(--pink-mid);color:var(--text);vertical-align:middle;padding:1rem 1.25rem;font-size:.88rem}.admin-table tr:hover td{background:var(--bg)}.badge-published{background:var(--lavender);color:var(--lavender-deep);border:1px solid var(--lavender-mid);border-radius:99px}.badge-draft,.badge-published{padding:.2rem .6rem;font-size:.72rem}.badge-draft{background:var(--pink-pale);color:var(--text-light);border:1px solid var(--pink-border);border-radius:99px}.form-card{background:var(--white);border:1px solid var(--pink-border);box-shadow:0 4px 20px var(--card-shadow);border-radius:16px;padding:2rem}.form-group{margin-bottom:1.5rem}.form-label{color:var(--text-mid);letter-spacing:.05em;margin-bottom:.5rem;font-size:.82rem;display:block}.form-input,.form-select,.form-textarea{border:1.5px solid var(--pink-border);width:100%;color:var(--text);background:var(--bg);border-radius:10px;outline:none;padding:.65rem .9rem;font-family:Noto Sans JP,sans-serif;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--pink);box-shadow:0 0 0 3px #f472b626}.form-textarea{resize:vertical;min-height:320px;line-height:1.9}.form-actions{gap:.75rem;margin-top:2rem;display:flex}.empty-state{text-align:center;color:var(--text-light);padding:4rem 2rem}.empty-state p{margin-top:.75rem;font-size:.9rem}