/* Generated by build-assets.mjs. Edit the source stylesheets, then rebuild. */
/* source: styles.css */
:root {
  --rose-50: #fffafd;
  --rose-100: #fff1f7;
  --rose-200: #f9dce8;
  --rose-300: #efbfd2;
  --rose-400: #db98b3;
  --rose-500: #c87798;
  --ink: #765c68;
  --muted: #a98796;
  --line: #e9cbd7;
  --paper: rgba(255, 253, 254, 0.94);
  --shadow: 0 5px 0 rgba(187, 134, 155, 0.12), 0 12px 30px rgba(152, 103, 126, 0.1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  font-family: "Quicksand", sans-serif;
  background-color: #fff5fa;
  background-image:
    linear-gradient(90deg, rgba(235, 180, 204, 0.16) 1px, transparent 1px),
    linear-gradient(90deg, transparent 17px, rgba(255,255,255,.85) 17px, rgba(255,255,255,.85) 32px, transparent 32px);
  background-size: 34px 100%, 34px 100%;
  min-height: 100vh;
}

button, input, select { font: inherit; }
button, label[for] { -webkit-tap-highlight-color: transparent; }
a { color: inherit; }

.page-shell { width: min(1420px, calc(100% - 32px)); margin: 24px auto 0; }
.paper-panel {
  background: var(--paper);
  border: 1px solid rgba(218, 164, 187, 0.65);
  box-shadow: var(--shadow);
  position: relative;
}
.paper-panel::after {
  content: "";
  position: absolute;
  inset: 5px;
  border: 1px dashed rgba(224, 177, 197, 0.55);
  pointer-events: none;
}

.site-header {
  min-height: 176px;
  border-radius: 28px 28px 18px 18px;
  overflow: hidden;
  display: flex;
  align-items: center;
  padding: 38px 230px 28px 64px;
  background:
    linear-gradient(90deg, rgba(255,255,255,.93) 0 45%, rgba(255,255,255,.28) 72%),
    radial-gradient(circle at 82% 22%, #fff 0 5%, transparent 5.5%),
    radial-gradient(circle at 75% 58%, #f8ccdc 0 8%, transparent 8.5%),
    radial-gradient(circle at 88% 70%, #efd0df 0 9%, transparent 9.5%),
    linear-gradient(135deg, #f9dfeb, #f2bfd4);
}
.brand-copy { position: relative; z-index: 2; }
.eyebrow { margin: 0 0 2px; font: 500 11px/1.4 "DM Mono", monospace; text-transform: uppercase; letter-spacing: 2px; color: var(--rose-500); }
h1 { margin: 0; font: 400 clamp(34px, 5vw, 68px)/1 "Pacifico", cursive; color: #bd7794; text-shadow: 2px 2px #fff, 4px 4px rgba(211,153,178,.24); }
.tagline { margin: 11px 0 0; font: 400 12px "DM Mono", monospace; letter-spacing: .5px; color: #a17d8e; }
.header-bloom { position: absolute; right: 42px; bottom: 13px; font-size: 72px; color: rgba(255,255,255,.84); transform: rotate(14deg); }
.lace { height: 22px; background: radial-gradient(circle at 11px -2px, transparent 11px, #f7d7e4 12px, #f7d7e4 14px, transparent 15px) 0 0/22px 22px repeat-x; opacity: .8; }
.lace-top { position: absolute; left: 0; right: 0; top: 0; z-index: 2; transform: rotate(180deg); }
.ribbon { position: absolute; right: 13%; top: 35px; width: 110px; height: 90px; z-index: 3; filter: drop-shadow(0 4px 0 rgba(184,123,148,.12)); }
.ribbon-knot { position: absolute; z-index: 3; left: 39px; top: 22px; width: 36px; height: 31px; display:grid; place-items:center; border-radius: 50%; color:#fff; background:#e9a9c2; border:3px solid #fff; }
.ribbon-loop { position:absolute; top:7px; width:52px; height:45px; background:#f3c6d8; border:3px solid #fff; }
.ribbon-loop.left { left:2px; border-radius:65% 30% 50% 50%; transform:rotate(-18deg); }
.ribbon-loop.right { right:2px; border-radius:30% 65% 50% 50%; transform:rotate(18deg); }
.ribbon-tail { position:absolute; top:45px; width:26px; height:44px; background:#efb9ce; clip-path:polygon(0 0,100% 0,88% 100%,50% 75%,12% 100%); }
.ribbon-tail.left { left:31px; transform:rotate(10deg); }.ribbon-tail.right{right:28px;transform:rotate(-11deg)}

.ticker { margin: 5px 22px 24px; padding: 6px 14px; overflow:hidden; white-space:nowrap; border:1px solid #efd5e0; background:#fffafc; text-align:center; color:#ae7c92; font: 10px "DM Mono", monospace; }
.layout { display:grid; grid-template-columns: 205px minmax(0,1fr) 190px; gap:22px; align-items:start; }
.left-column, .right-column { display:grid; gap:18px; position:sticky; top:18px; }
.sidebar-card { border-radius:18px; overflow:hidden; padding:18px; }
.sidebar-card h2 { margin:3px 0 14px; text-align:center; color:#bd7895; font:400 27px "Pacifico", cursive; }
.mini-landscape { height:82px; margin:-12px -12px 10px; border:1px solid #efd3df; background:linear-gradient(#fbe5ee 0 48%,#fff 48%), repeating-linear-gradient(90deg,#fff,#fff 8px,#f8d8e5 8px,#f8d8e5 9px); position:relative; overflow:hidden; }
.mini-landscape span{position:absolute;font-size:45px;color:white;left:15px;top:3px}.mini-landscape b{position:absolute;font-size:34px;color:#e4a0bc;right:26px;bottom:1px}.mini-landscape i{position:absolute;color:#c987a2;right:16px;top:7px}
.navigation-card nav { display:grid; gap:8px; }
.navigation-card a { text-decoration:none; padding:5px 8px; color:#b07b91; font:12px "DM Mono", monospace; border-bottom:1px dotted #efd2de; transition:.2s ease; }
.navigation-card a:hover { padding-left:13px; color:#c45e8a; background:#fff5f9; }
.tiny-stamp { width:max-content; margin:18px auto 0; padding:5px 8px; border:1px solid #dfb7c7; transform:rotate(-2deg); font:9px "DM Mono",monospace; color:#be88a0; }
.portrait-placeholder { width:82px;height:82px;border-radius:50%;margin:0 auto 8px;display:grid;place-items:center;font-size:36px;color:white;background:radial-gradient(circle at 35% 35%,#fff 0 7%,transparent 8%),linear-gradient(145deg,#f7d6e4,#d997b3);border:5px solid #fff;box-shadow:0 0 0 1px #e9c6d4; }
.about-card p { font-size:12px; line-height:1.7; text-align:center; }

.main-column { min-width:0; display:grid; gap:22px; }
.welcome { min-height:160px; border-radius:18px; overflow:hidden; display:flex; align-items:center; gap:20px; padding:38px 32px 24px; background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,247,251,.8)),radial-gradient(circle,#edbed0 1px,transparent 2px); background-size:auto,16px 16px; }
.welcome .lace { position:absolute;top:5px;left:10px;right:10px}.welcome h2,.section-heading h2,.posts-heading h2 { margin:0;color:#a96883;font:400 28px "Pacifico",cursive; }.welcome p:last-child{margin:7px 0 0;font-size:13px;line-height:1.7}.flower-pot{margin-left:auto;width:92px;min-width:92px;height:100px;position:relative;text-align:center}.flower-pot span{font-size:70px;color:#e7a3be;position:relative;z-index:2}.flower-pot i{position:absolute;width:47px;height:36px;background:#ecc4d4;bottom:0;left:24px;clip-path:polygon(5% 0,95% 0,78% 100%,22% 100%)}

.composer { border-radius:20px; padding:28px; overflow:hidden; }
.section-heading,.posts-heading,.composer-footer { display:flex;justify-content:space-between;align-items:center;gap:15px; }
.soft-button,.publish-button,.upload-button { border:1px solid #dfa9bf; background:linear-gradient(#fff,#f8d9e6); color:#a96380; border-radius:999px; cursor:pointer; box-shadow:0 2px 0 #ebc5d4; }
.compact{padding:7px 12px;font-size:11px}.title-label{display:block;margin:22px 0 5px;font:10px "DM Mono",monospace;text-transform:uppercase;letter-spacing:1px;color:#a87a8e}.title-input{width:100%;border:1px solid #e5c4d2;background:#fffafd;color:#765c68;border-radius:9px;padding:12px 14px;outline:none;font-weight:700;font-size:17px}.title-input:focus,.post-editor:focus{border-color:#d997b2;box-shadow:0 0 0 3px rgba(222,151,181,.16)}
.toolbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:12px;padding:8px;border:1px solid #e8c9d6;border-radius:11px 11px 4px 4px;background:linear-gradient(#fff,#fff6fa)}.tool-group{display:flex;border:1px solid #ead0db;border-radius:7px;overflow:hidden}.tool-button{min-width:34px;height:32px;padding:0 8px;border:0;border-right:1px solid #ead0db;background:#fff;color:#8f6577;cursor:pointer}.tool-button:last-child{border-right:0}.tool-button:hover,.tool-button:focus-visible{background:#f7dce7;color:#ad557a}.align-center{text-align:center}.align-right{text-align:right}.select-tool select{height:34px;border:1px solid #e7c9d6;border-radius:7px;background:#fff;color:#8f6577;padding:0 6px;outline:none}.color-tool{height:34px;display:flex;align-items:center;gap:2px;padding:0 5px 0 9px;border:1px solid #e7c9d6;border-radius:7px;background:#fff;font-weight:700}.color-tool input{width:23px;height:24px;border:0;padding:2px;background:transparent}.upload-button{padding:8px 12px;font-size:11px;margin-left:auto}.editor-note{padding:6px 10px;background:#fff1f6;border:1px solid #eed0dc;border-top:0;font-size:10px;color:#a57a8d;text-align:right}.post-editor{min-height:330px;padding:22px;border:1px solid #e3c2d0;border-top:0;border-radius:0 0 10px 10px;background-color:#fffdfd;background-image:linear-gradient(rgba(238,203,217,.18) 1px,transparent 1px);background-size:100% 29px;outline:none;line-height:1.75;overflow:auto}.post-editor:empty::before{content:attr(data-placeholder);color:#c7a4b2;pointer-events:none}.post-editor img,.post-body img{display:block;float:left;max-width:min(45%,320px);height:auto;margin:7px 18px 12px 0;padding:5px;background:#fff;border:1px solid #dfbdca;box-shadow:3px 4px 0 rgba(218,170,190,.22);cursor:grab;touch-action:none;user-select:none}.post-editor img[data-float="right"],.post-body img[data-float="right"]{float:right;margin:7px 0 12px 18px}.post-editor img.is-dragging{opacity:.75;cursor:grabbing;outline:3px solid rgba(210,116,154,.3)}.post-editor::after,.post-body::after{content:"";display:block;clear:both}.composer-footer{margin-top:15px}.composer-footer span{font:10px "DM Mono",monospace;color:#ad8797}.publish-button{padding:10px 20px;font-weight:700}.publish-button:hover{transform:translateY(-1px);box-shadow:0 4px 0 #ebc5d4}

.posts-section{padding-bottom:20px}.posts-heading{padding:4px 5px 12px}.post-count{font:10px "DM Mono",monospace;color:#a77e90}.posts-list{display:grid;gap:20px}.post-card{border-radius:19px;padding:28px;background:rgba(255,253,254,.96);border:1px solid #e4c3d1;box-shadow:var(--shadow);position:relative;overflow:hidden}.post-card::before{content:"";position:absolute;left:0;right:0;top:0;height:12px;background:repeating-linear-gradient(90deg,#f2c9d9 0 8px,#fff 8px 16px)}.post-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:12px;border-bottom:1px dotted #dfbccb}.post-header h3{margin:0;color:#ac6682;font:400 26px "Pacifico",cursive}.post-meta{margin:4px 0 0;font:10px "DM Mono",monospace;color:#a78795}.delete-post{border:0;background:transparent;color:#c6a3b1;cursor:pointer;font-size:12px}.delete-post:hover{color:#ba577c}.post-body{padding-top:17px;font-size:14px;line-height:1.75;overflow-wrap:anywhere}.post-body p:first-child{margin-top:0}.empty-state{text-align:center;padding:60px 20px;border:1px dashed #ddb8c7;background:rgba(255,255,255,.72);border-radius:17px}.empty-state span{display:block;font-size:43px;color:#d998b3}.empty-state p{font-size:12px}.currently-card dl{margin:0;display:grid;gap:10px}.currently-card dl div{padding-bottom:8px;border-bottom:1px dotted #e2becd}.currently-card dt{font:9px "DM Mono",monospace;text-transform:uppercase;color:#c07896}.currently-card dd{margin:2px 0 0;font-size:11px}.notes-card ul{padding-left:20px;margin:0;font-size:11px;line-height:2}.notes-card li::marker{content:"♡  ";color:#d787a8}.calendar-card{text-align:center}.calendar-card #today-date{font:600 15px/1.6 "DM Mono",monospace;color:#a1667f}
footer{margin:35px 0 0;padding:18px;text-align:center;border-top:1px solid #edcfdc;color:#a77d8f;font:10px "DM Mono",monospace;background:rgba(255,255,255,.5)}.toast{position:fixed;left:50%;bottom:28px;z-index:20;transform:translate(-50%,20px);padding:10px 17px;border:1px solid #dfa8be;border-radius:999px;background:#fff7fb;color:#a65d7b;box-shadow:var(--shadow);font-size:12px;opacity:0;pointer-events:none;transition:.25s ease}.toast.show{opacity:1;transform:translate(-50%,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:0}

@media (max-width: 1050px){.layout{grid-template-columns:180px minmax(0,1fr)}.right-column{display:none}.site-header{padding-right:180px}.ribbon{right:7%}}
@media (max-width: 760px){.page-shell{width:min(100% - 18px,680px);margin-top:10px}.site-header{min-height:150px;padding:38px 24px 24px}.site-header .ribbon,.header-bloom{display:none}h1{font-size:38px}.tagline{font-size:9px}.layout{display:block}.left-column{position:static;display:block;margin-bottom:18px}.left-column .about-card{display:none}.navigation-card{padding:12px}.mini-landscape,.navigation-card h2,.tiny-stamp{display:none}.navigation-card nav{display:flex;overflow:auto;gap:3px}.navigation-card a{white-space:nowrap;border:0;background:#fff4f8;border-radius:999px}.welcome{padding:35px 22px 20px}.flower-pot{display:none}.composer{padding:18px 12px}.section-heading h2,.posts-heading h2{font-size:25px}.toolbar{gap:5px}.upload-button{margin-left:0}.editor-note{text-align:left}.post-editor{min-height:300px;padding:16px}.post-editor img,.post-body img{max-width:48%}.post-card{padding:24px 18px}.composer-footer{align-items:flex-end}.composer-footer span{max-width:130px}}
@media (max-width: 430px){.post-editor img,.post-body img{max-width:62%}.welcome h2{font-size:24px}.tool-button{min-width:31px;padding:0 6px}}

/* source: admin-auth.css */
html:not(.blog-admin-authenticated) #write,
html:not(.blog-admin-authenticated) .navigation-card a[href="#write"],
html:not(.blog-admin-authenticated) .delete-post {
  display: none !important;
}

.blog-auth-link {
  margin-top: 5px;
  color: #a35475 !important;
  background: #fff5f9 !important;
  border-top: 1px dotted #e7bfd0 !important;
}

.blog-auth-link::after {
  content: " ♡";
  color: #d88dab;
}

.blog-login-overlay {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(111, 76, 91, .3);
  backdrop-filter: blur(5px);
}

.blog-login-overlay[hidden] { display: none !important; }

.blog-login-card {
  position: relative;
  width: min(100%, 390px);
  padding: 38px 34px 32px;
  overflow: hidden;
  border: 1px solid #dfb6c7;
  border-radius: 22px;
  background:
    linear-gradient(rgba(255, 253, 254, .96), rgba(255, 247, 251, .97)),
    repeating-linear-gradient(0deg, transparent 0 28px, rgba(232, 188, 207, .2) 28px 29px);
  box-shadow: 0 18px 55px rgba(100, 64, 80, .23), 5px 6px 0 rgba(225, 181, 199, .3);
}

.blog-login-card::before {
  content: "";
  position: absolute;
  inset: 8px 10px auto;
  height: 13px;
  background: radial-gradient(circle at 7px 0, transparent 6px, #f0c8d8 6.5px 8px, transparent 8.5px) 0 0 / 18px 13px repeat-x;
  opacity: .9;
}

.blog-login-card .eyebrow { margin: 0 0 3px; }

.blog-login-card h2 {
  margin: 0 0 6px;
  color: #a65e7c;
  font: 400 30px "Pacifico", cursive;
}

.blog-login-intro {
  margin: 0 0 20px;
  color: #8c6b79;
  font-size: 12px;
  line-height: 1.7;
}

.blog-login-card label {
  display: block;
  margin: 11px 0 5px;
  color: #9d7184;
  font: 9px "DM Mono", monospace;
  letter-spacing: .8px;
  text-transform: uppercase;
}

.blog-login-card input {
  box-sizing: border-box;
  width: 100%;
  padding: 11px 13px;
  border: 1px solid #e2bdcc;
  border-radius: 9px;
  outline: 0;
  background: #fffdfd;
  color: #715762;
  font: 500 13px "Quicksand", sans-serif;
}

.blog-login-card input:focus {
  border-color: #cf7fa0;
  box-shadow: 0 0 0 3px rgba(207, 127, 160, .15);
}

.blog-login-submit {
  width: 100%;
  margin-top: 18px;
  padding: 11px 18px;
  border: 1px solid #d99ab4;
  border-radius: 999px;
  background: linear-gradient(#fff, #f4cfde);
  color: #9f5574;
  box-shadow: 0 3px 0 #e7bdce;
  cursor: pointer;
  font: 700 12px "Quicksand", sans-serif;
}

.blog-login-submit:hover { transform: translateY(-1px); }

.blog-login-message {
  min-height: 18px;
  margin: 13px 0 0;
  color: #b14f75;
  font: 10px/1.6 "DM Mono", monospace;
  text-align: center;
}

.blog-login-close {
  position: absolute;
  top: 18px;
  right: 17px;
  width: 28px;
  height: 28px;
  border: 0;
  background: transparent;
  color: #bd8299;
  cursor: pointer;
  font-size: 20px;
}

body.blog-login-open { overflow: hidden; }

.blog-admin-badge {
  display: none;
  margin-left: auto;
  color: #aa6d86;
  font: 9px "DM Mono", monospace;
}

html.blog-admin-authenticated .blog-admin-badge { display: inline; }

@media (max-width: 430px) {
  .blog-login-card { padding: 34px 22px 26px; }
}

/* source: post-flair.css */
.post-flair-picker {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 10px 0 2px;
  padding: 0;
  border: 0;
}

.post-flair-picker legend {
  float: left;
  margin-right: 3px;
  color: #a87a8e;
  font: 9px "DM Mono", monospace;
  letter-spacing: .8px;
  text-transform: uppercase;
}

.post-flair-option { cursor: pointer; }
.post-flair-option input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}

.post-flair-option span,
.post-flair-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  width: fit-content;
  border: 1px solid;
  border-radius: 999px;
  font: 500 9px "DM Mono", monospace;
  letter-spacing: .25px;
  line-height: 1;
  white-space: nowrap;
}

.post-flair-option span {
  padding: 7px 10px;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}

.post-flair-option input:focus-visible + span {
  outline: 2px solid rgba(196, 98, 139, .3);
  outline-offset: 2px;
}

.post-flair-option input:checked + span {
  transform: translateY(-1px);
  box-shadow: 0 2px 0 rgba(184, 118, 147, .18);
}

.post-flair-option--diary span,
.post-flair-badge--diary {
  border-color: #dfa9bf;
  background: #fff0f6;
  color: #a65375;
}

.post-flair-option--creativity span,
.post-flair-badge--creativity {
  border-color: #cbb9df;
  background: #f7f0ff;
  color: #80629d;
}

.post-flair-option:not(:has(input:checked)) span {
  background: #fffdfd;
  color: #a78e99;
  border-color: #ead2dc;
}

.post-flair-badge {
  margin-top: 7px;
  padding: 5px 8px;
}

.post-flair-metadata { display: none !important; }

@media (max-width: 430px) {
  .post-flair-picker { align-items: flex-start; flex-wrap: wrap; }
  .post-flair-picker legend { width: 100%; }
}

/* source: freeform-canvas.css */
:root { --canvas-grid: 24px; }

.post-editor {
  position: relative;
  min-height: 620px;
  overflow: auto;
  isolation: isolate;
  background-color: #fffdfd;
  background-image: linear-gradient(rgba(238, 203, 217, .17) 1px, transparent 1px);
  background-size: 100% 29px;
  transition: background-color .2s ease;
}
.post-editor.is-grid-active {
  background-color: #fffafd;
  background-image:
    linear-gradient(rgba(201, 104, 144, .22) 1px, transparent 1px),
    linear-gradient(90deg, rgba(201, 104, 144, .22) 1px, transparent 1px),
    linear-gradient(rgba(201, 104, 144, .1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(201, 104, 144, .1) 1px, transparent 1px);
  background-size:
    calc(var(--canvas-grid) * 5) calc(var(--canvas-grid) * 5),
    calc(var(--canvas-grid) * 5) calc(var(--canvas-grid) * 5),
    var(--canvas-grid) var(--canvas-grid),
    var(--canvas-grid) var(--canvas-grid);
}

.canvas-photo-tools {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 7px 11px;
  border: 1px solid #e5bdcd;
  border-top: 0;
  background: #fff8fb;
  color: #956b7d;
  font: 10px "DM Mono", monospace;
}
.canvas-photo-tools[hidden] { display: none; }
.canvas-photo-tools strong { margin-right: auto; color: #b85f83; font-weight: 500; }
.canvas-photo-tools input { width: 130px; accent-color: #c96890; }
.canvas-photo-tools button {
  border: 1px solid #dfb2c4;
  border-radius: 999px;
  padding: 5px 10px;
  background: #fff;
  color: #aa5779;
  cursor: pointer;
}

.photo-drawer {
  margin-top: 12px;
  padding: 13px;
  border: 1px solid #e2bacb;
  border-radius: 12px;
  background:
    linear-gradient(rgba(255,255,255,.82), rgba(255,248,251,.9)),
    repeating-linear-gradient(90deg, #f8dce7 0 10px, #fff 10px 20px);
  box-shadow: inset 0 0 0 4px rgba(255,255,255,.6);
}
.photo-drawer-header { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-bottom: 10px; }
.photo-drawer-header h3 { margin: 0; color: #ae6682; font: 400 20px "Pacifico", cursive; }
.photo-drawer-header p { margin: 0; color: #a98796; font: 9px "DM Mono", monospace; text-align: right; }
.photo-drawer-items { display: flex; gap: 10px; min-height: 92px; overflow-x: auto; padding: 4px 3px 8px; }
.photo-drawer-empty { width: 100%; display: grid; place-items: center; color: #b997a5; font: 10px "DM Mono", monospace; border: 1px dashed #dfbdcb; border-radius: 9px; }
.drawer-photo {
  position: relative;
  flex: 0 0 92px;
  height: 82px;
  padding: 5px;
  border: 2px solid #fff;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 0 0 1px #dfbdcb, 3px 4px 0 rgba(205,132,161,.15);
  cursor: grab;
  touch-action: none;
}
.drawer-photo img { width: 100%; height: 100%; object-fit: cover; border-radius: 4px; pointer-events: none; user-select: none; }
.drawer-photo.is-selected { border-color: #c96890; outline: 3px solid rgba(201,104,144,.18); }
.drawer-photo.is-placed::after {
  content: "on canvas";
  position: absolute;
  left: 5px;
  right: 5px;
  bottom: 5px;
  padding: 2px;
  border-radius: 4px;
  background: rgba(255,247,251,.92);
  color: #a95475;
  font: 8px "DM Mono", monospace;
  text-align: center;
}

.post-editor .freeform-photo,
.post-body .freeform-photo {
  position: absolute;
  z-index: 6;
  display: block;
  width: 240px;
  max-width: none;
  padding: 6px;
  border: 2px solid transparent;
  border-radius: 8px;
  background: #fff;
  box-shadow: 4px 5px 0 rgba(205,132,161,.18), 0 6px 18px rgba(119,77,95,.12);
  user-select: none;
  touch-action: none;
}
.post-editor .freeform-photo img,
.post-body .freeform-photo img {
  display: block;
  float: none;
  width: 100%;
  max-width: none;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 4px;
  box-shadow: none;
  pointer-events: none;
  user-select: none;
}
.post-editor .freeform-photo.is-selected {
  border-color: #c65f88;
  outline: 4px solid rgba(201,104,144,.2);
}
.post-editor .freeform-photo.is-selected::before {
  content: "move";
  position: absolute;
  left: 9px;
  top: 9px;
  z-index: 2;
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(255,250,252,.94);
  color: #a95074;
  font: 9px "DM Mono", monospace;
}
.post-editor .freeform-photo.is-dragging { opacity: .78; cursor: grabbing; }
.freeform-resize-handle {
  display: none;
  position: absolute;
  right: -10px;
  bottom: -10px;
  width: 22px;
  height: 22px;
  border: 3px solid #fff;
  border-radius: 50%;
  background: #c65f88;
  box-shadow: 0 0 0 1px #a94d72;
  cursor: nwse-resize;
  touch-action: none;
}
.post-editor .freeform-photo.is-selected .freeform-resize-handle { display: block; }
.post-body .freeform-resize-handle { display: none !important; }

.wrap-proxy {
  display: block;
  position: relative;
  z-index: -1;
  min-width: 1px;
  margin: 0;
  padding: 0;
  opacity: 0;
  pointer-events: none;
  user-select: none;
  font-size: 0;
  line-height: 0;
  shape-outside: margin-box;
  shape-margin: 8px;
}
.wrap-proxy[data-side="left"] { float: left; }
.wrap-proxy[data-side="right"] { float: right; }

.canvas-drag-ghost {
  position: fixed;
  z-index: 9999;
  width: 190px;
  padding: 5px;
  border: 2px solid #c65f88;
  border-radius: 8px;
  background: #fff;
  box-shadow: 8px 10px 22px rgba(93,49,68,.22);
  opacity: .82;
  pointer-events: none;
}
.canvas-drag-ghost img { display: block; width: 100%; height: auto; border-radius: 4px; }

.post-body { position: relative; }

@media (max-width: 760px) {
  .post-editor { min-height: 520px; }
  .photo-drawer-header { align-items: flex-start; }
  .photo-drawer-header p { max-width: 145px; }
  .canvas-photo-tools { flex-wrap: wrap; }
  .canvas-photo-tools strong { width: 100%; }
  .canvas-photo-tools input { width: 105px; }
}

/* source: freeform-fixes-v2.css */
.canvas-photo-tools.is-size-limited {
  border-color: #cf789b;
  background: #fff1f6;
}
.canvas-photo-tools.is-size-limited::after {
  content: "canvas edge reached";
  color: #b25277;
  font: 9px "DM Mono", monospace;
}
.canvas-photo-tools.is-size-limited input[type="range"] { accent-color: #a98a97; }
.wrap-exclusion-map {
  display: block;
  float: left;
  margin: 0;
  padding: 0;
  opacity: 0;
  pointer-events: none;
  user-select: none;
  font-size: 0;
  line-height: 0;
}

/* source: freeform-layout-fix-v2.css */
.post-editor {
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-wrap: anywhere;
  word-break: break-word;
  padding-left: 24px;
  padding-right: 24px;
  line-height: 24px;
}
.post-editor > div,
.post-editor > p,
.post-body,
.post-body > div,
.post-body > p {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.post-body { overflow-x: hidden; }

/* source: canvas-autogrow.css */
.post-editor {
  height: auto;
  min-height: 620px;
  overflow-x: hidden;
  overflow-y: visible;
  overscroll-behavior: none;
}

@media (max-width: 760px) {
  .post-editor { min-height: 520px; }
}

/* source: canvas-autogrow-final.css */
.post-editor {
  overflow-x: clip;
  overflow-y: visible;
}

/* source: published-posts.css */
.post-body .freeform-photo,
.post-body .image-frame { cursor: zoom-in; }
.post-body .freeform-photo img,
.post-body .image-frame img,
.post-body > img {
  pointer-events: auto !important;
  cursor: zoom-in !important;
}

.post-lightbox {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: center;
  padding: 32px;
  background: rgba(75, 47, 60, .76);
  backdrop-filter: blur(6px);
  opacity: 0;
  visibility: hidden;
  transition: opacity .2s ease, visibility .2s ease;
}
.post-lightbox.is-open { opacity: 1; visibility: visible; }
.post-lightbox-figure {
  position: relative;
  max-width: min(92vw, 1200px);
  max-height: 90vh;
  margin: 0;
  padding: 12px;
  border: 1px solid #e5b8ca;
  border-radius: 14px;
  background: #fffafd;
  box-shadow: 0 24px 70px rgba(55, 29, 42, .38);
}
.post-lightbox img {
  display: block;
  max-width: calc(92vw - 24px);
  max-height: calc(90vh - 24px);
  width: auto;
  height: auto;
  border-radius: 8px;
  object-fit: contain;
}
.post-lightbox-close {
  position: absolute;
  right: -12px;
  top: -12px;
  z-index: 2;
  width: 34px;
  height: 34px;
  border: 3px solid #fff;
  border-radius: 50%;
  background: #c96890;
  color: #fff;
  box-shadow: 0 3px 12px rgba(84, 43, 61, .28);
  cursor: pointer;
  font-size: 18px;
}
body.has-lightbox { overflow: hidden; }

@media (max-width: 600px) {
  .post-lightbox { padding: 18px; }
  .post-lightbox img { max-width: calc(100vw - 60px); max-height: calc(100vh - 70px); }
}

/* source: published-exact-preview.css */
.canvas-preview-metadata { display: none !important; }

.post-body.has-exact-canvas {
  position: relative;
  padding: 0;
  overflow: visible;
  min-height: 0 !important;
}
.published-canvas-viewport {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.published-canvas-exact.post-editor {
  position: absolute;
  left: 0;
  top: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  outline: 0;
  background-color: transparent;
  background-image: none;
  overflow: visible;
  transform-origin: left top;
}
.published-canvas-exact.post-editor::before { display: none; }

.legacy-frozen-text-layer {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: visible;
  pointer-events: auto;
  user-select: text;
}

/* source: background-polka-v5.css */
body {
  background-color: #f7e5ec;
  background-image:
    radial-gradient(
      circle at center,
      rgba(255, 255, 255, .98) 0 6px,
      rgba(255, 255, 255, .88) 7px,
      rgba(255, 255, 255, .34) 8px,
      transparent 9px
    ),
    radial-gradient(
      circle at center,
      rgba(255, 255, 255, .98) 0 6px,
      rgba(255, 255, 255, .88) 7px,
      rgba(255, 255, 255, .34) 8px,
      transparent 9px
    );
  background-position: 0 0, 31px 31px;
  background-size: 62px 62px;
  background-attachment: fixed;
}

@media (max-width: 760px) {
  body {
    background-position: 0 0, 27.5px 27.5px;
    background-size: 55px 55px;
  }
}

/* source: sharp-dotted-ui.css */
/* Flat, sharp paper frames: keep the delicate dotted detail without the white rim. */
.paper-panel {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.paper-panel::after {
  inset: 0 !important;
  border: 1px dotted rgba(205, 132, 161, .7) !important;
  border-radius: 0 !important;
}

.site-header,
.sidebar-card,
.navigation-card,
.welcome,
.composer,
.post-card,
.empty-state {
  border-radius: 0 !important;
}

.post-card {
  border: 1px dotted #dfbccb !important;
  box-shadow: none !important;
}

.ticker {
  border: 1px dotted #dfbccb !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.navigation-card a,
.blog-auth-link {
  border-radius: 0 !important;
  background: transparent !important;
}

.navigation-card a:hover {
  background: rgba(255, 245, 249, .7) !important;
}

.toolbar,
.tool-group,
.select-tool select,
.color-tool,
.title-input,
.editor-note,
.post-editor {
  border-radius: 0 !important;
  box-shadow: none;
}

.toolbar,
.editor-note {
  border-style: dotted !important;
}

.post-header,
.navigation-card a,
.currently-card dl div {
  border-color: #dfbccb !important;
}

@media (max-width: 760px) {
  .navigation-card a {
    border-bottom: 1px dotted #dfbccb !important;
    border-radius: 0 !important;
    background: transparent !important;
  }
}

/* source: aston-script.css */
@font-face {
  font-family: "Jemina Aston Embedded";
  src: url("aston-script.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  unicode-range: U+0000-002F, U+003A-10FFFF;
}

h1,
.sidebar-card h2,
.welcome h2,
.section-heading h2,
.posts-heading h2,
.post-header h3,
.photo-drawer-header h3,
.blog-login-card h2 {
  font-family: "Jemina Aston Embedded", "Quicksand", cursive !important;
  font-style: normal !important;
  font-weight: 400 !important;
}

/* source: aston-header-fix-v2.css */
.site-header h1 {
  font-size: clamp(32px, 4vw, 52px) !important;
  line-height: 1.15 !important;
}

.site-header .tagline {
  position: relative;
  z-index: 3;
  margin-top: 24px;
}

@media (max-width: 760px) {
  .site-header h1 {
    font-size: 34px !important;
  }

  .site-header .tagline {
    margin-top: 22px;
  }
}

/* source: tagline-font.css */
.site-header .tagline {
  font-family: "Quicksand", sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

/* source: support-copy-size.css */
.site-header .tagline,
.welcome p:last-child {
  font-size: 12px !important;
}

@media (max-width: 760px) {
  .site-header .tagline,
  .welcome p:last-child {
    font-size: 9px !important;
  }
}

/* source: lace-divider-v3.css */
body { overflow-x: clip; }

.ticker.lace-ribbon-divider {
  box-sizing: border-box;
  width: 100vw;
  height: auto;
  margin: 7px 0 18px calc(50% - 50vw);
  padding: 0;
  overflow: visible;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  line-height: 0;
}

.lace-ribbon-divider img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
}


@media (min-width: 761px) {
  .ticker.lace-ribbon-divider {
    width: 100%;
    margin-left: 0;
    overflow: hidden;
  }
}

@media (max-width: 760px) {
  .ticker.lace-ribbon-divider {
    height: auto;
    margin-bottom: 12px;
  }
}

/* source: thought-of-day.css */
.thought-card {
  padding-top: 22px;
}

.thought-card h2 {
  margin-bottom: 10px;
}

.thought-day-display {
  min-height: 42px;
  margin: 0;
  padding: 11px 8px 13px;
  border-top: 1px dotted #dfbccb;
  border-bottom: 1px dotted #dfbccb;
  color: #806471;
  font-size: 12px;
  line-height: 1.7;
  text-align: left !important;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.thought-day-form {
  display: none;
  margin-top: 13px;
}

html.blog-admin-authenticated .thought-day-form {
  display: block;
}

.thought-day-form label {
  display: block;
  margin-bottom: 5px;
  color: #a87a8e;
  font: 8px "DM Mono", monospace;
  letter-spacing: .6px;
  text-transform: uppercase;
}

.thought-day-input {
  box-sizing: border-box;
  width: 100%;
  min-height: 105px;
  resize: vertical;
  padding: 9px;
  border: 1px dotted #dbaabd;
  border-radius: 0;
  outline: 0;
  background: rgba(255, 250, 253, .88);
  color: #765c68;
  font: 11px/1.6 "Quicksand", sans-serif;
}

.thought-day-input:focus {
  border-color: #c97597;
  box-shadow: 0 0 0 2px rgba(214, 134, 166, .12);
}

.thought-day-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 7px;
}

.thought-day-count {
  color: #ad8797;
  font: 8px "DM Mono", monospace;
}

.thought-day-save {
  padding: 6px 10px;
  border: 1px dotted #d99ab4;
  border-radius: 0;
  background: #fff6fa;
  color: #9f5574;
  cursor: pointer;
  font-size: 10px;
  font-weight: 700;
}

.thought-day-save:hover {
  background: #f9dce8;
}

@media (max-width: 760px) {
  .left-column .about-card.thought-card {
    display: block;
    margin-top: 12px;
  }

  .thought-card {
    padding: 16px;
  }
}

/* source: thought-day-compact-v2.css */
.thought-card {
  padding: 13px 14px 15px !important;
}

.thought-day-ornament {
  display: block;
  width: min(100%, 158px);
  height: auto;
  margin: 0 auto 13px;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
}

.thought-card h2 {
  margin: 0 0 13px;
  font-size: 19px;
  line-height: 1;
}

.thought-day-display {
  min-height: 28px;
  margin: 0;
  padding: 7px 5px 8px;
  font-size: 10px;
  line-height: 1.45;
}

.thought-day-form {
  margin-top: 9px;
}

.thought-day-form label {
  margin-bottom: 4px;
}

.thought-day-input {
  min-height: 78px;
  padding: 7px;
  font-size: 10px;
  line-height: 1.45;
}

.thought-day-actions {
  margin-top: 5px;
}

@media (max-width: 760px) {
  .left-column .about-card.thought-card {
    padding: 13px 14px 15px !important;
  }

  .thought-day-ornament {
    width: min(100%, 145px);
  }
}

/* source: about-me-page.css */
.about-me-page[hidden] { display: none !important; }

.main-column.is-showing-about-me > .welcome {
  display: none !important;
}

.about-me-page {
  padding: 28px;
  overflow: hidden;
}

.about-me-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
  padding-bottom: 13px;
  border-bottom: 1px dotted #dfbccb;
}

.about-me-heading .eyebrow { margin: 0 0 2px; }

.about-me-heading h2 {
  margin: 0;
  color: #a96883;
  font: 400 30px "Aston Script", "Pacifico", cursive;
}

.about-edit-button {
  display: none;
  flex: 0 0 auto;
  padding: 6px 10px;
  border: 1px dotted #d99ab4;
  border-radius: 0;
  background: #fff7fa;
  color: #9f5574;
  cursor: pointer;
  font: 9px "DM Mono", monospace;
}

html.blog-admin-authenticated .about-edit-button { display: inline-block; }
.about-me-page.is-editing .about-edit-button { display: none; }

.about-editing-tools,
.about-photo-tools,
.about-photo-drawer,
.about-edit-actions {
  display: none;
}

.about-me-page.is-editing .about-editing-tools,
.about-me-page.is-editing .about-photo-tools:not([hidden]),
.about-me-page.is-editing .about-photo-drawer,
.about-me-page.is-editing .about-edit-actions {
  display: flex;
}

.about-editing-tools {
  align-items: center;
  gap: 7px;
  flex-wrap: wrap;
  padding: 8px;
  border: 1px dotted #e1b7c8;
  background: linear-gradient(#fff, #fff6fa);
}

.about-editing-tools .upload-button { margin-left: auto; }

.about-editor-note {
  display: none;
  padding: 6px 10px;
  border: 1px dotted #e4becd;
  border-top: 0;
  background: #fff1f6;
  color: #a57a8d;
  font-size: 10px;
  text-align: right;
}

.about-me-page.is-editing .about-editor-note { display: block; }

.about-bio-editor {
  box-sizing: border-box;
  min-height: 520px;
  border: 1px dotted #deb5c6;
  border-radius: 0;
}

.about-me-page:not(.is-editing) .about-bio-editor {
  overflow: hidden;
  cursor: default;
}

.about-me-page:not(.is-editing) .about-bio-editor.is-grid-active {
  background-color: #fffdfd;
  background-image: linear-gradient(rgba(238, 203, 217, .17) 1px, transparent 1px);
  background-size: 100% 29px;
}

.about-me-page:not(.is-editing) .freeform-photo {
  border-color: transparent !important;
  outline: 0 !important;
  cursor: default;
}

.about-me-page:not(.is-editing) .freeform-photo::before,
.about-me-page:not(.is-editing) .freeform-resize-handle {
  display: none !important;
}

.about-photo-tools {
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 7px 11px;
  border: 1px dotted #e5bdcd;
  border-top: 0;
  background: #fff8fb;
  color: #956b7d;
  font: 10px "DM Mono", monospace;
}

.about-photo-tools[hidden] { display: none !important; }
.about-photo-tools strong { margin-right: auto; color: #b85f83; font-weight: 500; }
.about-photo-tools input { width: 130px; accent-color: #c96890; }
.about-photo-tools button { padding: 5px 9px; }

.about-photo-drawer {
  margin-top: 12px;
  padding: 13px;
  border: 1px dotted #e2bacb;
  border-radius: 0;
  background: rgba(255, 250, 252, .9);
  flex-direction: column;
}

.about-photo-drawer .photo-drawer-items { width: 100%; }

.about-edit-actions {
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
  margin-top: 14px;
}

.about-edit-actions .about-save-button {
  padding: 9px 15px;
  border: 1px dotted #d99ab4;
  background: #fff5f9;
  color: #9f5574;
  cursor: pointer;
  font-weight: 700;
}

.about-edit-actions .about-cancel-button {
  padding: 8px 12px;
  border: 0;
  background: transparent;
  color: #a98796;
  cursor: pointer;
  font-size: 10px;
}

.about-save-status {
  margin-right: auto;
  color: #ad8797;
  font: 9px "DM Mono", monospace;
}

@media (max-width: 760px) {
  .about-me-page { padding: 20px 13px; }
  .about-bio-editor { min-height: 440px; }
  .about-editing-tools .upload-button { margin-left: 0; }
  .about-editor-note { text-align: left; }
  .about-edit-actions { flex-wrap: wrap; }
  .about-save-status { width: 100%; }
}

/* source: sidebar-editing.css */
.currently-card,
.notes-card {
  position: relative;
}

.sidebar-editor-button {
  display: none;
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 4px 7px;
  border: 1px dotted #d99ab4;
  border-radius: 0;
  background: rgba(255, 248, 251, .94);
  color: #9f5574;
  cursor: pointer;
  font: 8px "DM Mono", monospace;
}

html.blog-admin-authenticated .sidebar-editor-button {
  display: inline-block;
}

.sidebar-card.is-sidebar-editing .sidebar-editor-button {
  display: none;
}

.sidebar-editor-form {
  display: none;
  margin-top: 9px;
}

.sidebar-card.is-sidebar-editing .sidebar-editor-form {
  display: block;
}

.sidebar-card.is-sidebar-editing > dl,
.sidebar-card.is-sidebar-editing > ul {
  display: none;
}

.sidebar-current-row {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 5px;
  margin-bottom: 6px;
}

.sidebar-editor-form input,
.sidebar-editor-form textarea {
  box-sizing: border-box;
  width: 100%;
  border: 1px dotted #dcaec1;
  border-radius: 0;
  outline: 0;
  background: #fffafd;
  color: #765c68;
  font: 9px/1.45 "Quicksand", sans-serif;
}

.sidebar-editor-form input {
  min-width: 0;
  padding: 6px 5px;
}

.sidebar-editor-form textarea {
  min-height: 118px;
  padding: 7px;
  resize: vertical;
}

.sidebar-editor-form input:focus,
.sidebar-editor-form textarea:focus {
  border-color: #c97597;
  box-shadow: 0 0 0 2px rgba(214, 134, 166, .12);
}

.sidebar-editor-hint {
  margin: 0 0 6px;
  color: #ad8797;
  font: 8px/1.5 "DM Mono", monospace;
}

.sidebar-editor-actions {
  display: flex;
  justify-content: flex-end;
  gap: 5px;
  margin-top: 7px;
}

.sidebar-editor-actions button {
  padding: 5px 7px;
  border: 1px dotted #d99ab4;
  border-radius: 0;
  background: #fff7fa;
  color: #9f5574;
  cursor: pointer;
  font-size: 8px;
}

.sidebar-editor-actions .sidebar-cancel-button {
  border-color: transparent;
  background: transparent;
  color: #a98796;
}

/* source: about-header-polish.css */
.about-me-heading h2 {
  font-family: "Jemina Aston Embedded", cursive !important;
  font-size: 27px;
  font-style: normal !important;
  font-weight: 400 !important;
}

.site-header::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  height: 22px;
  background: radial-gradient(circle at 11px -2px, transparent 11px, #f7d7e4 12px, #f7d7e4 14px, transparent 15px) 0 0 / 22px 22px repeat-x;
  opacity: .8;
  pointer-events: none;
}

/* source: header-bunnies.css */
.header-bunnies {
  position: absolute;
  top: 50%;
  right: 4.5%;
  z-index: 3;
  display: block;
  width: min(40%, 420px);
  height: auto;
  transform: translateY(-50%);
  opacity: .84;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
}

@media (max-width: 1050px) {
  .header-bunnies {
    right: 3%;
    width: min(36%, 340px);
  }
}

@media (max-width: 760px) {
  .header-bunnies {
    display: none;
  }
}

/* source: header-account-cleanup-v4.css */
.site-header {
  background: linear-gradient(90deg, rgba(255, 255, 255, .93) 0 45%, rgba(255, 255, 255, .28) 72%), linear-gradient(135deg, #f9dfeb, #f2bfd4) !important;
}

.navigation-card .blog-auth-link {
  margin-top: 0 !important;
  border-top: 0 !important;
  color: #b07b91 !important;
}

.blog-auth-link::before,
.blog-auth-link::after {
  display: none !important;
  content: none !important;
}

/* source: mobile-optimized-v1.css */
html,
body {
  max-width: 100%;
}

img,
input,
textarea,
select,
button {
  max-width: 100%;
}

@media (min-width: 761px) and (max-width: 1050px) {
  .layout {
    row-gap: 18px;
  }

  .right-column {
    display: grid !important;
    grid-column: 1 / -1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }
}

@media (max-width: 760px) {
  html,
  body {
    overflow-x: hidden;
  }

  body {
    background-attachment: scroll;
  }

  .page-shell {
    width: calc(100% - 12px);
    margin: 6px auto 0;
  }

  .site-header {
    min-height: 132px;
    padding: 29px 15px 31px;
    justify-content: center;
    text-align: center;
  }

  .site-header .brand-copy {
    width: 100%;
    min-width: 0;
  }

  .site-header h1 {
    font-size: clamp(30px, 11vw, 38px) !important;
    overflow-wrap: anywhere;
  }

  .site-header .tagline {
    max-width: 100%;
    margin: 13px auto 0;
    font-size: 9px;
    line-height: 1.55;
    white-space: normal;
  }

  .ticker {
    margin: 4px 0 13px;
    padding: 6px 8px;
    white-space: normal;
    font-size: 8px;
    line-height: 1.5;
  }

  .layout {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }

  .left-column,
  .main-column,
  .right-column {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
  }

  .left-column {
    margin-bottom: 0;
  }

  .navigation-card {
    padding: 8px;
  }

  .navigation-card nav {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 4px;
    overflow: visible;
  }

  .navigation-card a {
    display: grid;
    min-width: 0;
    min-height: 42px;
    place-items: center;
    padding: 7px 4px;
    overflow-wrap: anywhere;
    white-space: normal;
    text-align: center;
    font-size: 9px;
    line-height: 1.35;
  }

  .left-column .about-card.thought-card {
    margin-top: 10px;
  }

  .main-column {
    gap: 14px;
  }

  .right-column {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 0;
  }

  .right-column .sidebar-card {
    min-width: 0;
    padding: 14px 12px;
  }

  .right-column .calendar-card {
    grid-column: 1 / -1;
  }

  .welcome {
    min-height: 0;
    padding: 31px 16px 17px;
    gap: 0;
  }

  .welcome h2 {
    font-size: 24px;
    line-height: 1.05;
  }

  .welcome p:last-child {
    font-size: 11px;
    line-height: 1.6;
  }

  .composer {
    padding: 15px 8px;
  }

  .section-heading,
  .posts-heading {
    align-items: flex-start;
  }

  .section-heading h2,
  .posts-heading h2 {
    font-size: 24px;
    line-height: 1.05;
  }

  .title-label {
    margin-top: 17px;
  }

  .title-input {
    padding: 11px 10px;
    font-size: 16px;
  }

  .toolbar,
  .about-editing-tools {
    gap: 5px;
    padding: 6px;
  }

  .tool-button {
    min-width: 40px;
    height: 40px;
    padding: 0 8px;
  }

  .select-tool select {
    height: 40px;
  }

  .color-tool {
    height: 40px;
  }

  .upload-button {
    display: inline-flex;
    min-height: 40px;
    align-items: center;
    padding: 8px 10px;
  }

  .editor-note,
  .about-editor-note {
    padding: 7px 8px;
    font-size: 9px;
    line-height: 1.5;
  }

  .post-editor,
  .about-bio-editor {
    min-height: 480px;
    padding: 12px;
    line-height: 24px;
    overscroll-behavior: contain;
  }

  .canvas-photo-tools,
  .about-photo-tools {
    gap: 7px;
    padding: 8px;
  }

  .canvas-photo-tools input,
  .about-photo-tools input {
    flex: 1 1 120px;
    width: auto;
    min-width: 90px;
    min-height: 32px;
  }

  .canvas-photo-tools button,
  .about-photo-tools button {
    min-height: 36px;
  }

  .photo-drawer,
  .about-photo-drawer {
    margin-top: 9px;
    padding: 9px;
  }

  .photo-drawer-header {
    gap: 7px;
  }

  .photo-drawer-header h3 {
    font-size: 18px;
  }

  .drawer-photo {
    flex-basis: 86px;
    height: 78px;
  }

  .freeform-resize-handle {
    right: -12px;
    bottom: -12px;
    width: 28px;
    height: 28px;
  }

  .composer-footer {
    gap: 10px;
  }

  .publish-button {
    min-height: 42px;
  }

  .posts-heading {
    padding-right: 4px;
    padding-left: 4px;
  }

  .posts-list {
    gap: 14px;
  }

  .post-card {
    padding: 21px 12px 16px;
  }

  .post-header {
    gap: 9px;
  }

  .post-header h3 {
    font-size: 23px;
    line-height: 1.05;
    overflow-wrap: anywhere;
  }

  .post-body {
    padding-top: 12px;
    font-size: 12px;
    line-height: 1.65;
  }

  .delete-post {
    min-width: 40px;
    min-height: 40px;
  }

  .about-me-page {
    padding: 17px 8px;
  }

  .about-me-heading {
    gap: 9px;
    margin-bottom: 12px;
  }

  .about-me-heading h2 {
    font-size: 25px;
  }

  .about-edit-button {
    min-height: 38px;
    padding: 7px 9px;
  }

  .about-edit-actions button {
    min-height: 40px;
  }

  .sidebar-editor-button {
    min-width: 40px;
    min-height: 34px;
  }

  .sidebar-current-row {
    grid-template-columns: minmax(58px, .8fr) minmax(0, 1.4fr);
  }

  .blog-login-overlay {
    padding: 8px;
  }

  .blog-login-card {
    max-height: calc(100dvh - 16px);
    padding: 31px 18px 22px;
    overflow-y: auto;
    border-radius: 0;
  }

  .blog-login-card input,
  .blog-login-submit {
    min-height: 44px;
  }

  .post-lightbox {
    padding: 12px;
  }

  .post-lightbox-figure {
    max-width: calc(100vw - 24px);
    padding: 7px;
  }

  .post-lightbox img {
    max-width: calc(100vw - 38px);
    max-height: calc(100dvh - 54px);
  }

  .post-lightbox-close {
    right: -5px;
    top: -10px;
    width: 40px;
    height: 40px;
  }

  .toast {
    bottom: 14px;
    max-width: calc(100vw - 24px);
    text-align: center;
  }

  footer {
    margin-top: 20px;
    padding: 14px 8px;
    line-height: 1.6;
  }
}

@media (max-width: 430px) {
  .navigation-card nav {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .navigation-card a {
    font-size: 8px;
  }

  .right-column {
    grid-template-columns: 1fr;
  }

  .right-column .calendar-card {
    grid-column: auto;
  }

  .section-heading,
  .posts-heading,
  .composer-footer {
    flex-wrap: wrap;
  }

  .composer-footer {
    align-items: stretch;
  }

  .composer-footer span {
    max-width: none;
  }

  .publish-button {
    width: 100%;
  }

  .post-header {
    align-items: center;
  }

  .about-me-heading {
    align-items: center;
  }

  .about-edit-actions {
    align-items: stretch;
  }
}

/* source: welcome-ridges-v1.css */
.welcome {
  padding-top: 42px !important;
  padding-bottom: 42px !important;
}

.welcome .lace {
  top: 5px;
  right: 10px;
  left: 10px;
  z-index: 2;
  transform: rotate(180deg);
  transform-origin: center;
}

.welcome::before {
  content: "";
  position: absolute;
  right: 10px;
  bottom: 5px;
  left: 10px;
  z-index: 2;
  height: 22px;
  background: radial-gradient(circle at 11px -2px, transparent 11px, #f7d7e4 12px, #f7d7e4 14px, transparent 15px) 0 0 / 22px 22px repeat-x;
  opacity: .8;
  pointer-events: none;
}

.welcome .eyebrow {
  margin: 0 0 8px;
}

.welcome h2 {
  line-height: 1.12;
}

.welcome h2 + p {
  margin: 9px 0 0;
}

@media (max-width: 760px) {
  .welcome {
    padding: 42px 16px !important;
  }

  .welcome .eyebrow {
    margin-bottom: 10px;
  }

  .welcome h2 {
    line-height: 1.15;
  }

  .welcome h2 + p {
    margin-top: 11px;
  }
}

/* source: header-spacing-v1.css */
.site-header {
  padding-top: 38px !important;
  padding-bottom: 38px !important;
}

@media (max-width: 760px) {
  .site-header {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }
}

/* source: thought-day-mobile-layout-v1.css */
@media (max-width: 760px) {
  .left-column .about-card.thought-card {
    display: grid !important;
    grid-template-columns: minmax(92px, 30%) minmax(0, 1fr);
    grid-template-rows: auto auto;
    align-items: start;
    column-gap: 14px;
    row-gap: 8px;
    min-height: 0;
    padding: 14px !important;
  }

  .thought-card .thought-day-ornament {
    grid-column: 1;
    grid-row: 1;
    width: min(100%, 108px);
    margin: 0;
    justify-self: start;
  }

  .thought-card h2 {
    grid-column: 1;
    grid-row: 2;
    align-self: start;
    margin: 0;
    font-size: 17px;
    line-height: 1.08;
    text-align: left;
  }

  .thought-card .thought-day-display {
    grid-column: 2;
    grid-row: 1;
    align-self: stretch;
    min-width: 0;
    min-height: 0;
    margin: 0;
    padding: 6px 4px 7px;
  }

  .thought-card .thought-day-form {
    grid-column: 2;
    grid-row: 2;
    min-width: 0;
    margin-top: 0;
  }

  .thought-card .thought-day-input {
    min-height: 56px;
  }
}

/* source: thought-day-mobile-layout-v2.css */
@media (max-width: 760px) {
  .left-column .about-card.thought-card {
    grid-template-columns: minmax(105px, 32%) minmax(0, 1fr);
    grid-template-rows: auto auto;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }

  .thought-card h2 {
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    margin: 0;
    text-align: center;
  }

  .thought-card .thought-day-ornament {
    grid-column: 1;
    grid-row: 2;
    width: min(100%, 108px);
    margin: 2px 0 0;
    justify-self: center;
  }

  .thought-card .thought-day-display {
    grid-column: 2;
    grid-row: 1 / 3;
    align-self: center;
    padding-top: 7px;
    padding-bottom: 7px;
  }

  html.blog-admin-authenticated .thought-card .thought-day-display {
    grid-row: 1;
    align-self: end;
  }

  .thought-card .thought-day-form {
    grid-column: 2;
    grid-row: 2;
  }
}

/* source: thought-day-mobile-layout-v3.css */
@media (max-width: 760px) {
  .thought-card .thought-day-ornament {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
  }

  .thought-card h2 {
    grid-column: 1;
    grid-row: 2;
    margin: 0;
  }

  .thought-card .thought-day-display {
    grid-column: 2;
    grid-row: 1 / 3;
    align-self: stretch;
    display: flex;
    align-items: center;
    min-height: 112px;
    padding: 10px 6px;
  }

  html.blog-admin-authenticated .thought-card .thought-day-display {
    grid-row: 1;
    align-self: stretch;
    min-height: 72px;
  }
}

/* source: thought-day-mobile-layout-v4.css */
@media (max-width: 760px) {
  .thought-card .thought-day-display {
    display: block;
    text-align: left !important;
  }
}

/* source: header-optical-balance-v1.css */
/* The capital B in Aston Script rises above its normal line box. This small
   optical offset keeps the visible title/tagline group centered between the
   matching ridges without changing their equal structural padding. */
.site-header .brand-copy {
  transform: translateY(5px);
}

@media (max-width: 760px) {
  .site-header .brand-copy {
    transform: translateY(4px);
  }
}

/* source: welcome-optical-balance-v1.css */
/* Aston Script's capital J extends beyond the heading line box. Offset the
   copy group slightly so its visible edges sit evenly between both ridges. */
.welcome > .lace + div {
  transform: translateY(4px);
}

.welcome h2 {
  line-height: 1.2;
}

.welcome h2 + p {
  margin-top: 16px;
}

@media (max-width: 760px) {
  .welcome > .lace + div {
    transform: translateY(3px);
  }

  .welcome h2 {
    line-height: 1.22;
  }

  .welcome h2 + p {
    margin-top: 16px;
  }
}

/* source: posts-heading-spacing-v1.css */
.posts-heading .eyebrow {
  margin: 0 0 11px;
}

.posts-heading h2 {
  line-height: 1.16;
}

@media (max-width: 760px) {
  .posts-heading .eyebrow {
    margin-bottom: 12px;
  }

  .posts-heading h2 {
    line-height: 1.18;
  }
}

.composer > .section-heading .eyebrow {
  margin: 0 0 11px;
}

.composer > .section-heading h2 {
  line-height: 1.16;
}

@media (max-width: 760px) {
  .composer > .section-heading .eyebrow {
    margin-bottom: 12px;
  }

  .composer > .section-heading h2 {
    line-height: 1.18;
  }
}

/* source: mobile-sidebar-order-v1.css */
@media (max-width: 760px) {
  .left-column {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .left-column > .navigation-card,
  .left-column > .thought-card {
    grid-column: 1 / -1;
  }

  .left-column > .thought-card,
  .left-column > .currently-card,
  .left-column > .notes-card {
    margin-top: 0 !important;
  }

  .left-column > .currently-card,
  .left-column > .notes-card {
    min-width: 0;
    padding: 14px 12px;
  }
}

/* source: calendar-typography-v1.css */
.calendar-card > .eyebrow {
  margin: 0 0 10px;
  color: #bd7895;
  font-family: "Jemina Aston Embedded", cursive;
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: 0;
  text-transform: none;
}

.calendar-card #today-date {
  color: var(--rose-500);
  font-family: "DM Mono", monospace;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.55;
  letter-spacing: 2px;
  text-transform: uppercase;
}

/* source: calendar-typography-v2.css */
.calendar-card > .eyebrow {
  font-size: 21px;
}

/* source: dear-diary-petals-v1.css */
.welcome .petal-scatter {
  position: relative;
  z-index: 1;
  flex: 0 0 clamp(170px, 26%, 250px);
  align-self: center;
  height: 116px;
  margin-left: auto;
  overflow: visible;
  pointer-events: none;
}

.welcome .petal-scatter-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: .88;
  user-select: none;
}

@media (min-width: 761px) and (max-width: 1050px) {
  .welcome .petal-scatter {
    flex-basis: 180px;
  }
}

@media (max-width: 760px) {
  .welcome .petal-scatter {
    display: none;
  }
}

/* source: dear-diary-gradient-v1.css */
.welcome {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, .98) 0%, rgba(255, 252, 253, .96) 54%, rgba(249, 226, 236, .82) 100%),
    radial-gradient(circle, rgba(237, 190, 208, .72) 1px, transparent 2px);
  background-size: auto, 16px 16px;
}

/* source: navigation-ornament-v1.css */
.mini-landscape .navigation-button-ornament {
  position: absolute;
  right: 22px;
  top: 74%;
  display: block;
  width: 34px;
  height: 34px;
  object-fit: contain;
  transform: translateY(-50%);
  pointer-events: none;
  user-select: none;
}

.mini-landscape .navigation-floral-corner {
  position: absolute;
  left: 4px;
  top: 0;
  display: block;
  width: 96px;
  height: 38px;
  object-fit: contain;
  object-position: left top;
  opacity: 1;
  filter: contrast(1.18) drop-shadow(0 0 0.55px rgba(139, 96, 116, 0.78));
  pointer-events: none;
  user-select: none;
}

/* source: post-title-spacing-v1.css */
.post-card {
  padding-top: 40px;
}

.post-header h3 {
  margin: 0 0 10px;
  line-height: 1.4;
}

.post-meta {
  margin-top: 0;
}

@media (max-width: 760px) {
  .post-card {
    padding-top: 36px;
  }

  .post-header {
    align-items: flex-start;
  }

  .post-header h3 {
    line-height: 1.4;
    margin-bottom: 10px;
  }
}

/* source: published-canvas-consistency-v1.css */
.post-editor,
.published-canvas-exact.post-editor {
  font-family: "Quicksand", sans-serif;
  font-size: 14px;
}

.post-editor font[size="2"],
.published-canvas-exact font[size="2"] { font-size: 12px; }
.post-editor font[size="3"],
.published-canvas-exact font[size="3"] { font-size: 14px; }
.post-editor font[size="4"],
.published-canvas-exact font[size="4"] { font-size: 18px; }
.post-editor font[size="5"],
.published-canvas-exact font[size="5"] { font-size: 24px; }
.post-editor font[size="6"],
.published-canvas-exact font[size="6"] { font-size: 32px; }

.published-canvas-exact.post-editor {
  box-sizing: border-box;
  max-width: none;
}

.publish-button:disabled {
  cursor: wait;
  opacity: .72;
  transform: none;
}

/* source: post-recovery-v1.css */
.post-recovery-panel {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 1100;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  width: min(620px, calc(100% - 44px));
  box-sizing: border-box;
  padding: 14px 16px;
  border: 1px dotted #cf8ba7;
  background: rgba(255, 250, 252, .98);
  color: #7e5d6b;
  box-shadow: 0 10px 30px rgba(95, 58, 75, .2);
}

.post-recovery-panel[hidden] { display: none !important; }
.post-recovery-panel div { min-width: 0; }
.post-recovery-panel span,
.post-recovery-panel small {
  display: block;
  font: 9px/1.5 "DM Mono", monospace;
  color: #aa7289;
}
.post-recovery-panel strong {
  display: block;
  margin: 2px 0;
  overflow-wrap: anywhere;
  color: #a35475;
  font: 600 13px/1.45 "Quicksand", sans-serif;
}
.post-recovery-panel button {
  min-height: 36px;
  padding: 7px 12px;
  border: 1px solid #d9a4b9;
  border-radius: 999px;
  background: #fff;
  color: #9f5574;
  cursor: pointer;
  font: 600 10px "Quicksand", sans-serif;
}
.post-recovery-panel [data-recover-post] { background: #f6d6e3; }
.post-recovery-panel button:disabled { cursor: wait; opacity: .7; }
.post-card.is-pending-sync .post-meta { color: #b14f75; font-weight: 500; }

@media (max-width: 760px) {
  .post-recovery-panel {
    right: 10px;
    bottom: 10px;
    grid-template-columns: 1fr 1fr;
    width: calc(100% - 20px);
    padding: 12px;
  }
  .post-recovery-panel div { grid-column: 1 / -1; }
  .post-recovery-panel button { width: 100%; }
}

/* source: block-editor-v2.css */
.block-editor-heading { align-items: flex-start; }
.block-editor-heading-actions { display: flex; gap: 8px; align-items: center; }
.block-flair-picker { margin-bottom: 12px; }
.block-formatting-toolbar {
  position: sticky;
  top: 6px;
  z-index: 20;
  display: flex;
  align-items: center;
  gap: 5px;
  overflow-x: auto;
  margin-top: 12px;
  padding: 8px;
  border: 1px dotted #dfa9bf;
  background: rgba(255, 250, 252, .96);
  box-shadow: 0 4px 12px rgba(154, 91, 116, .08);
}
.block-formatting-toolbar button,
.block-formatting-toolbar select {
  flex: 0 0 auto;
  min-width: 34px;
  height: 32px;
  padding: 0 8px;
  border: 1px solid #ead0db;
  border-radius: 4px;
  background: #fff;
  color: #8f6577;
  font: 11px "DM Mono", monospace;
  cursor: pointer;
}
.block-formatting-toolbar .align-center { text-align: center; }
.block-formatting-toolbar .align-right { text-align: right; }
.block-color-tool {
  flex: 0 0 auto;
  height: 32px;
  display: flex;
  align-items: center;
  gap: 3px;
  padding: 0 6px;
  border: 1px solid #ead0db;
  background: #fff;
  color: #8f6577;
}
.block-color-tool input { width: 24px; height: 25px; padding: 1px; border: 0; background: transparent; }
.block-editor-help {
  margin: 0;
  padding: 7px 10px;
  border: 1px dotted #e5bacb;
  border-top: 0;
  background: #fff6fa;
  color: #a17789;
  font: 9px/1.6 "DM Mono", monospace;
}
.block-editor-preview {
  overflow-x: auto;
  padding: 12px 0 3px;
}
.block-editor-canvas {
  width: 100%;
  min-height: 250px;
  display: grid;
  gap: 13px;
  transition: width .2s ease;
}
.composer.is-phone-preview .block-editor-canvas {
  width: min(390px, 100%);
  margin-inline: auto;
  padding: 9px;
  border: 1px dotted #ddaac0;
  background: #fffafd;
}
.composer.is-phone-preview .media-text-layout { grid-template-columns: minmax(105px, 42%) minmax(0, 1fr); gap: 8px; }
.composer.is-phone-preview .media-text-block.mobile-stackAbove .media-text-layout,
.composer.is-phone-preview .media-text-block.mobile-stackBelow .media-text-layout { grid-template-columns: 1fr; }
.composer.is-phone-preview .media-text-block.mobile-stackAbove .block-image-drop,
.composer.is-phone-preview .media-text-block.mobile-stackAbove .rich-text-input,
.composer.is-phone-preview .media-text-block.mobile-stackBelow .block-image-drop,
.composer.is-phone-preview .media-text-block.mobile-stackBelow .rich-text-input { grid-column: 1; }
.composer.is-phone-preview .media-text-block.mobile-stackAbove .block-image-drop,
.composer.is-phone-preview .media-text-block.mobile-stackBelow .rich-text-input { grid-row: 1; }
.composer.is-phone-preview .media-text-block.mobile-stackAbove .rich-text-input,
.composer.is-phone-preview .media-text-block.mobile-stackBelow .block-image-drop { grid-row: 2; }
.composer.is-phone-preview .multi-image-editor { grid-template-columns: repeat(2, minmax(90px, 1fr)); }
.content-block-editor {
  position: relative;
  padding: 43px 13px 13px;
  border: 1px dotted #dfaec2;
  background: rgba(255, 253, 254, .94);
  box-shadow: 3px 4px 0 rgba(221, 176, 194, .12);
}
.content-block-controls {
  position: absolute;
  inset: 0 0 auto;
  min-height: 32px;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 5px 7px;
  border-bottom: 1px dotted #e3bdcc;
  background: #fff6fa;
}
.content-block-controls .block-kind {
  margin-right: auto;
  color: #b46987;
  font: 9px "DM Mono", monospace;
}
.content-block-controls button,
.block-layout-options select,
.multi-image-editor button {
  min-height: 23px;
  border: 1px solid #dfb7c7;
  border-radius: 3px;
  background: #fff;
  color: #a5617c;
  font: 9px "DM Mono", monospace;
  cursor: pointer;
}
.content-block-controls button:disabled,
.multi-image-editor button:disabled { opacity: .35; cursor: default; }
.rich-text-input {
  min-height: 96px;
  padding: 10px;
  border: 1px solid #ead1db;
  background-color: #fff;
  background-image: linear-gradient(rgba(238, 203, 217, .14) 1px, transparent 1px);
  background-size: 100% 24px;
  color: #765c68;
  font: 14px/24px "Quicksand", sans-serif;
  overflow-wrap: anywhere;
  outline: none;
}
.rich-text-input:focus { border-color: #cf789b; box-shadow: 0 0 0 3px rgba(207, 120, 155, .12); }
.rich-text-input:empty::before { content: attr(data-placeholder); color: #c2a0af; pointer-events: none; }
.rich-text-input font[size="2"], .structured-post-v2 font[size="2"] { font-size: 12px; }
.rich-text-input font[size="3"], .structured-post-v2 font[size="3"] { font-size: 14px; }
.rich-text-input font[size="4"], .structured-post-v2 font[size="4"] { font-size: 18px; }
.rich-text-input font[size="5"], .structured-post-v2 font[size="5"] { font-size: 24px; }
.rich-text-input font[size="6"], .structured-post-v2 font[size="6"] { font-size: 32px; }
.block-layout-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin-bottom: 9px;
  color: #a17889;
  font: 9px "DM Mono", monospace;
}
.block-layout-options label { display: flex; align-items: center; gap: 6px; }
.block-layout-options select { height: 28px; padding-inline: 5px; }
.media-text-layout {
  display: grid;
  grid-template-columns: minmax(120px, 42%) minmax(0, 1fr);
  gap: 13px;
  align-items: stretch;
}
.media-text-block.side-right .block-image-drop { grid-column: 2; grid-row: 1; }
.media-text-block.side-right .rich-text-input { grid-column: 1; grid-row: 1; }
.block-image-drop {
  min-height: 150px;
  display: grid;
  place-items: center;
  overflow: hidden;
  padding: 7px;
  border: 1px dashed #dcaac0;
  background: #fff7fa;
  color: #aa8293;
  font: 9px/1.6 "DM Mono", monospace;
  text-align: center;
  cursor: pointer;
}
.block-image-drop img { display: block; width: 100%; height: 100%; max-height: 340px; object-fit: contain; }
.block-image-drop.standalone { min-height: 190px; }
.block-caption-input {
  width: 100%;
  margin-top: 8px;
  padding: 8px;
  border: 1px dotted #dfb4c6;
  background: #fff;
  color: #856a76;
  font: 10px "DM Mono", monospace;
}
.multi-image-editor {
  display: grid;
  grid-template-columns: repeat(3, minmax(90px, 1fr));
  gap: 9px;
}
.multi-image-editor figure {
  position: relative;
  min-height: 105px;
  margin: 0;
  padding: 5px;
  border: 1px solid #e3becd;
  background: #fff;
}
.multi-image-editor figure img { width: 100%; height: 120px; display: block; object-fit: cover; }
.multi-image-editor figure div { display: flex; justify-content: center; gap: 4px; margin-top: 5px; }
.add-more-images {
  min-height: 105px;
  display: grid;
  place-items: center;
  border: 1px dashed #dcaac0;
  background: #fff7fa;
  color: #a96782;
  font: 10px "DM Mono", monospace;
  cursor: pointer;
}
.block-add-menu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  margin-top: 14px;
  padding: 10px;
  border: 1px dotted #ddaac0;
  background: #fff8fb;
}
.block-add-menu span { margin-right: auto; color: #a77c8e; font: 9px "DM Mono", monospace; }
.block-add-menu button {
  min-height: 31px;
  padding: 5px 9px;
  border: 1px solid #dfb4c6;
  border-radius: 999px;
  background: #fff;
  color: #a55f7b;
  font: 9px "DM Mono", monospace;
  cursor: pointer;
}

/* Published structured posts */
.structured-post-v2 { display: grid; gap: 18px; }
.structured-post-v2 .content-block { min-width: 0; }
.structured-post-v2 .rich-text { min-width: 0; overflow-wrap: anywhere; }
.structured-post-v2 .rich-text > :first-child { margin-top: 0; }
.structured-post-v2 .rich-text > :last-child { margin-bottom: 0; }
.structured-post-v2 .media-text-block {
  display: grid;
  grid-template-columns: minmax(120px, 42%) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}
.structured-post-v2 .media-text-block.side-right figure { grid-column: 2; grid-row: 1; }
.structured-post-v2 .media-text-block.side-right .rich-text { grid-column: 1; grid-row: 1; }
.structured-post-v2 figure { margin: 0; }
.structured-post-v2 img {
  display: block;
  float: none;
  width: 100%;
  max-width: none;
  height: auto;
  margin: 0;
  padding: 6px;
  border: 1px solid #e2bdcc;
  border-radius: 7px;
  background: #fff;
  box-shadow: 4px 5px 0 rgba(205, 132, 161, .15);
  cursor: zoom-in;
  touch-action: manipulation;
}
.standalone-image-block { width: min(100%, 620px); margin-inline: auto !important; }
.standalone-image-block figcaption { margin-top: 8px; color: #987786; font: 10px/1.6 "DM Mono", monospace; text-align: center; }
.structured-post-v2 .gallery-block {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
}
.structured-post-v2 .gallery-columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.structured-post-v2 .gallery-block img { height: 100%; min-height: 150px; object-fit: cover; }
.structured-post-v2 .collage-block {
  position: relative;
  width: min(100%, 620px);
  min-height: clamp(260px, 60vw, 430px);
  margin-inline: auto;
  overflow: hidden;
  background: linear-gradient(135deg, #fffafd, #fff);
}
.structured-post-v2 .collage-block figure { position: absolute; width: 48%; }
.structured-post-v2 .collage-overlap figure:nth-child(1) { left: 4%; top: 6%; transform: rotate(-3deg); }
.structured-post-v2 .collage-overlap figure:nth-child(2) { right: 4%; top: 17%; transform: rotate(3deg); }
.structured-post-v2 .collage-overlap figure:nth-child(3) { left: 25%; bottom: 5%; transform: rotate(-1deg); }
.structured-post-v2 .collage-overlap figure:nth-child(n+4) { display: none; }
.structured-post-v2 .collage-grid { position: static; min-height: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; background: transparent; }
.structured-post-v2 .collage-grid figure { position: static; width: auto; transform: none; }

@media (max-width: 760px) {
  .block-editor-heading-actions { flex-direction: column; align-items: stretch; }
  #block-phone-preview { display: none; }
  .block-formatting-toolbar { top: 2px; margin-inline: -5px; }
  .content-block-editor { padding-inline: 8px; }
  .media-text-layout { gap: 8px; grid-template-columns: minmax(105px, 42%) minmax(0, 1fr); }
  .media-text-block.mobile-stackAbove .media-text-layout,
  .media-text-block.mobile-stackBelow .media-text-layout { grid-template-columns: 1fr; }
  .media-text-block.mobile-stackAbove .block-image-drop,
  .media-text-block.mobile-stackAbove .rich-text-input,
  .media-text-block.mobile-stackBelow .block-image-drop,
  .media-text-block.mobile-stackBelow .rich-text-input { grid-column: 1; }
  .media-text-block.mobile-stackAbove .block-image-drop,
  .media-text-block.mobile-stackBelow .rich-text-input { grid-row: 1; }
  .media-text-block.mobile-stackAbove .rich-text-input,
  .media-text-block.mobile-stackBelow .block-image-drop { grid-row: 2; }
  .multi-image-editor { grid-template-columns: repeat(2, minmax(90px, 1fr)); }
  .multi-image-editor figure img { height: 105px; }
  .structured-post-v2 { gap: 15px; }
  .structured-post-v2 .media-text-block { grid-template-columns: minmax(108px, 42%) minmax(0, 1fr); gap: 10px; }
  .structured-post-v2 .media-text-block.mobile-stackAbove,
  .structured-post-v2 .media-text-block.mobile-stackBelow { grid-template-columns: 1fr; }
  .structured-post-v2 .media-text-block.mobile-stackAbove figure,
  .structured-post-v2 .media-text-block.mobile-stackBelow .rich-text { grid-column: 1; grid-row: 1; }
  .structured-post-v2 .media-text-block.mobile-stackAbove .rich-text,
  .structured-post-v2 .media-text-block.mobile-stackBelow figure { grid-column: 1; grid-row: 2; }
  .structured-post-v2 .gallery-columns-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .structured-post-v2 .gallery-block img { min-height: 115px; }
  .structured-post-v2 .collage-block { min-height: clamp(230px, 90vw, 360px); }
  .legacy-post-card .published-canvas-viewport { touch-action: pan-y pinch-zoom; }
}

@media (max-width: 430px) {
  .block-add-menu span { width: 100%; }
  .block-layout-options label { width: 100%; justify-content: space-between; }
  .media-text-layout,
  .structured-post-v2 .media-text-block { grid-template-columns: minmax(98px, 40%) minmax(0, 1fr); }
  .rich-text-input { padding: 7px; font-size: 13px; }
}
