:root{color-scheme:light;--bg:#f8f7f3;--paper:#fff;--ink:#1c2924;--muted:#67756d;--line:#dbe2da;--line-strong:#c6d1c6;--accent:#447d67;--accent-dark:#2f6250;--accent-soft:#e7f0e9;--danger:#9a4f43;--shadow:0 18px 54px rgba(31,54,42,.08)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 15px/1.6 "Open Sans",sans-serif,system-ui;min-width:320px}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.45}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #8cc4a9;outline-offset:3px}
a{color:inherit}
.workspace{min-height:calc(100svh - 96px);padding-top:48px;padding-bottom:124px}
.workspace__content{min-width:0}
.stage-intro{margin-bottom:34px}
h1,h2,h3,p{margin:0}
.workspace h1,.workspace h2,.workspace h3,.workspace .sb-font-title{font-family:Ubuntu,sans-serif,system-ui;font-weight:400;letter-spacing:normal}
.stage-eyebrow{display:block;margin-bottom:14px;color:#52795f;font:750 13px/1.48 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-transform:uppercase;letter-spacing:.08em}
.stage-intro p{max-width:690px;color:var(--muted);margin-top:12px;font-size:15px;line-height:1.6}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:32px 0 14px}
.section-heading:first-child{margin-top:0}
.section-heading--actions{justify-content:flex-end}
.section-heading h2{font-size:20px;font-weight:400}
.section-heading small{color:var(--muted);font-size:13px}
.reminder-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.hint{color:var(--muted);font-size:13px;line-height:1.5}
.template-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.template-option{--block-padding-top:21px;min-height:140px;text-align:left;border:1px solid var(--line);border-radius:16px;padding:21px;background:var(--paper);transition:border-color .18s,box-shadow .18s,transform .18s}
.template-option:hover{border-color:#9dbba9;transform:translateY(-2px)}
.template-option.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px #447d6724}
.template-option__top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.template-option__name{font:400 20px/1.4 Ubuntu,sans-serif,system-ui}
.template-option__check{width:21px;height:21px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:50%;font-size:12px;color:transparent;flex:none}
.template-option.is-selected .template-option__check{background:var(--accent);border-color:var(--accent);color:white}
.template-option__summary{display:block;margin-top:11px;color:var(--accent-dark);font-size:12px;line-height:1.45;font-weight:600}
.template-option__description{display:block;margin-top:10px;color:var(--muted);font-size:13px;line-height:1.45}
.template-option--custom{display:block;width:100%;min-height:100px}
.platform-hint{margin:11px 0 22px}
.notice-line{margin-top:23px;padding:13px 0;border-top:1px solid var(--line);color:var(--muted);font-size:13px}
.item-list{display:grid;gap:14px}
.editor-panel{--block-padding-top:22px;border:1px solid var(--line);border-radius:16px;background:var(--paper);padding:22px;box-shadow:var(--shadow)}
.editor-panel__heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px}
.editor-panel__heading h2{font-size:20px;font-weight:400}
.text-button{border:0;background:transparent;color:var(--accent-dark);padding:7px 2px;font-size:13px;font-weight:700}
.text-button:hover{text-decoration:underline}
.text-button--danger{color:var(--danger)}
.field{display:block;margin-bottom:18px}
.field:last-child{margin-bottom:0}
.field__label{display:block;margin-bottom:7px;font-size:12px;font-weight:600;letter-spacing:.015em}
.field__help{display:block;margin:5px 0 0;color:var(--muted);font-size:12px}
.control{width:100%;min-height:46px;border:1px solid var(--line-strong);border-radius:9px;padding:10px 12px;background:white;color:var(--ink);outline:none;line-height:24px;transition:border-color .15s}
input.control,select.control{height:46px}
select.control{appearance:none;-webkit-appearance:none;display:block;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f6250' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:19px 19px;background-position:right 14px center}
.control:focus{border-color:var(--accent)}
textarea.control{resize:vertical;min-height:78px;line-height:1.5}
.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.switch-row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:13px 0;border-top:0}
.switch-row+.switch-row{border-top:1px solid var(--line)}
.switch-row strong{display:block;font-size:13px;font-weight:650}
.switch-row small{display:block;margin-top:3px;color:var(--muted);font-size:12px;line-height:1.35}
.switch{position:relative;display:inline-flex;align-items:center;flex:none;width:43px;height:25px}
.switch input{position:absolute;inset:0;z-index:1;opacity:0;cursor:pointer}
.switch span{width:43px;height:25px;border-radius:20px;background:#cbd4cb;transition:background .18s}
.switch span::after{content:"";display:block;width:19px;height:19px;border-radius:50%;margin:3px;background:white;box-shadow:0 1px 3px #1c29244d;transition:transform .18s}
.switch input:checked+span{background:var(--accent)}
.switch input:checked+span::after{transform:translateX(18px)}
.switch input:focus-visible+span{outline:3px solid #8cc4a9;outline-offset:3px}
.add-row{display:flex;gap:9px;margin-top:14px}
.add-row select{flex:1;min-width:0}
.button{min-height:46px;display:inline-flex;justify-content:center;align-items:center;gap:7px;border:1px solid transparent;border-radius:10px;padding:10px 17px;font-size:13px;font-weight:600;white-space:nowrap;transition:background .18s,transform .18s,border-color .18s;text-decoration:none}
.button:not(:disabled):active{transform:scale(.98)}
.button--primary{background:var(--accent);color:white}
.button--primary:not(:disabled):hover{background:var(--accent-dark)}
.button--secondary{background:#fff;color:var(--accent-dark);border-color:var(--line-strong)}
.button--secondary:not(:disabled):hover{border-color:var(--accent)}
.button--quiet{background:transparent;color:var(--ink)}
.button--quiet:not(:disabled):hover{background:#e9eee9}
.button--small{min-height:39px;padding:8px 12px}
.empty-state{padding:24px;border:1px dashed var(--line-strong);border-radius:13px;color:var(--muted);font-size:13px;line-height:1.5}
.day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.day-choice{position:relative;display:block;text-align:center}
.day-choice input{position:absolute;inset:0;opacity:0;cursor:pointer}
.day-choice span{display:grid;place-items:center;min-height:38px;border:1px solid var(--line-strong);border-radius:8px;background:white;color:var(--muted);font-size:12px;font-weight:650}
.day-choice input:checked+span{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark)}
.day-choice input:focus-visible+span{outline:3px solid #8cc4a9;outline-offset:2px}
.export-help{margin:14px 0 16px;color:var(--muted);font-size:13px;line-height:1.55}
.export-output{display:block;width:100%;height:260px;resize:vertical;border:1px solid var(--line-strong);border-radius:11px;padding:15px;background:#fdfefc;color:#34443a;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;overflow:auto}
.export-actions{display:flex;gap:10px;margin:12px 0;flex-wrap:wrap}
.feedback{margin:-12px 0 20px;padding:12px 15px;border:1px solid #dcb5aa;border-radius:10px;background:#fff4f0;color:#8a4135;font-size:13px}
.actionbar{position:fixed;bottom:0;left:0;right:0;z-index:30;background:rgba(248,247,243,.97);border-top:1px solid var(--line);backdrop-filter:blur(18px);padding-bottom:env(safe-area-inset-bottom)}
.actionbar__inner{padding-top:14px;padding-bottom:14px;display:flex;align-items:center;gap:12px}
.actionbar__progress{flex:1;text-align:center;color:var(--muted);font-size:12px}
.toast{position:fixed;right:25px;bottom:91px;z-index:50;border-radius:10px;background:var(--ink);color:white;padding:11px 15px;box-shadow:var(--shadow);font-size:13px}
@media(max-width:760px){.workspace{padding-top:31px;padding-bottom:135px}.stage-intro{margin-bottom:24px}}
@media(max-width:570px){.template-option{--block-padding-top:17px;min-height:109px;padding:17px}.template-option__description{margin-top:8px}.editor-panel{--block-padding-top:17px;padding:17px;box-shadow:none}.add-row{flex-wrap:wrap}.add-row select{flex-basis:100%}.add-row .button{width:100%}.section-heading--reminders{align-items:flex-start;flex-direction:column}.reminder-actions{width:100%;justify-content:flex-start}.actionbar__progress{display:none}.actionbar__inner{justify-content:space-between}.actionbar__inner .button{flex:1}.field-row{grid-template-columns:1fr}.export-output{height:220px}.toast{right:17px;left:17px;bottom:84px;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
.publish-panel{margin-top:0;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--paper)}
.publish-panel h2{margin:0 0 18px;font-size:20px}
.publish-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.publish-consent{display:flex;gap:5px;align-items:flex-start;margin:14px 0 12px;font-size:13px;line-height:1.5}
.publish-consent input{width:1.25em;height:1.25em;flex:none;margin:3px 1.5px 3px 4px;accent-color:var(--accent)}
.publish-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.publish-result{margin-top:22px;padding:18px;border-radius:12px;background:var(--accent-soft);word-break:break-word}
.publish-result strong{display:block;margin-bottom:12px}
.publish-result__line{display:flex;gap:8px;margin-bottom:16px}
.publish-result__line input{min-width:0}
.publish-result p{font-size:12px;line-height:1.5;color:var(--muted)}
@media(max-width:570px){.publish-panel{padding:18px}.publish-fields{grid-template-columns:1fr}.publish-result__line{display:grid}.publish-result__line button{white-space:normal}}

.icon{display:block;width:19px;height:19px;flex:none}
.editor-toolbar{position:relative;display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.item-card{position:relative;border:1px solid var(--line);border-radius:15px;background:var(--paper);transition:border-color .18s,box-shadow .18s}
.item-card:hover{border-color:#b6c9bc}
.item-card.is-open{border-color:var(--accent);box-shadow:0 0 0 1px #447d671a}
.item-card__header{--block-padding-top:14px;display:flex;align-items:center;gap:10px;min-height:94px;padding:14px 16px;cursor:pointer}
.item-card__select{display:block;flex:1;min-width:0;align-self:stretch;text-align:left;border:0;background:transparent;padding:7px 0;color:var(--ink)}
.item-card__title{display:flex;align-items:baseline;gap:10px;min-width:0}
.item-card__title strong{display:block;min-width:0;font:400 20px/1.4 Ubuntu,sans-serif,system-ui;overflow-wrap:anywhere}
.item-card__summary{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:5px;color:var(--muted);font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.item-card__tools{display:flex;align-items:center;gap:4px;flex:none}
.icon-button{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;padding:0;border:0;border-radius:9px;background:transparent;color:var(--muted);transition:background .15s,color .15s}
.icon-button:hover{background:var(--accent-soft);color:var(--accent-dark)}
.icon-button--danger:hover{background:#fff0eb;color:var(--danger)}
.item-card__grip{cursor:grab;touch-action:none;color:#8a9a90}
.item-card__grip:active{cursor:grabbing}
.item-card__body{--block-padding-top:24px;padding:24px;border-top:1px solid var(--line)}
.item-card__body[hidden]{display:none}
.item-card__body .field:last-child{margin-bottom:0}
.item-card.is-dragging{opacity:.5}
.item-card.is-drop-before::before,.item-card.is-drop-after::after{content:"";position:absolute;left:0;right:0;height:3px;border-radius:3px;background:var(--accent);pointer-events:none}
.item-card.is-drop-before::before{top:-9px}
.item-card.is-drop-after::after{bottom:-9px}
body.is-reordering,body.is-reordering *{cursor:grabbing!important;user-select:none!important}
.preset-dropdown{position:relative;z-index:4}
.preset-dropdown summary{list-style:none;cursor:pointer;user-select:none}
.preset-dropdown summary::-webkit-details-marker{display:none}
.preset-dropdown summary .icon{margin-left:3px;transition:transform .18s}
.preset-dropdown[open] summary .icon{transform:rotate(180deg)}
.preset-menu{position:absolute;left:0;top:calc(100% + 8px);width:300px;max-width:calc(100vw - 32px);max-height:340px;overflow:auto;padding:7px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--shadow)}
.preset-menu button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:45px;padding:10px 12px;border:0;border-radius:7px;background:transparent;text-align:left;color:var(--ink);font-size:13px}
.preset-menu button:not(:disabled):hover{background:var(--accent-soft)}
.preset-menu small{font-size:11px;color:var(--muted);white-space:nowrap}
@media(max-width:639px){.item-card__header{--block-padding-top:10px;gap:4px;padding:10px 8px;min-height:88px}.item-card__select{padding:5px 3px}.item-card__title{gap:6px}.item-card__title strong{font-size:15px}.item-card__summary{font-size:12px}.item-card__tools{gap:0}.icon-button{width:34px;height:40px}.item-card__body{--block-padding-top:18px;padding:18px 16px}.editor-toolbar{gap:9px}.preset-dropdown{position:static}.preset-menu{width:100%;max-width:none}.template-option{--block-padding-top:18px;padding:18px}}

.entry-answer+.entry-answer{margin-top:26px;padding-top:24px;border-top:1px solid var(--line)}
.emotion-picker{display:block;min-width:0;padding:0;border:0;margin:0 0 18px}
.emotion-picker legend{padding:0}
.emotion-picker__selections:empty{display:none}
.emotion-picker__selections:not(:empty){margin-bottom:12px}
.emotion-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(100px,180px) 42px 34px;align-items:center;gap:12px;min-height:48px;padding:4px 0;border-bottom:0}
.emotion-row:not(:last-child){border-bottom:1px solid var(--line)}
.emotion-row__name{min-width:0;font-size:13px;overflow-wrap:anywhere}
.emotion-row__intensity{display:block;width:100%;min-width:0;margin:0;accent-color:var(--accent);cursor:pointer}
.emotion-row__value{font-size:13px;color:var(--accent-dark);font-variant-numeric:tabular-nums;text-align:right}
.emotion-row .icon-button{width:34px;height:40px}
@media(max-width:570px){.emotion-row{grid-template-columns:minmax(0,1fr) 42px 34px;gap:4px 10px;padding:9px 0 5px}.emotion-row__name{grid-column:1/-1}}

.template-option,.item-card__header,.item-card__body,.editor-panel{padding-top:calc(var(--block-padding-top) / 1.25)}

.additional-settings { margin-top: 20px; display: grid; gap: 12px; min-width: 0; }
.additional-settings h3 { margin: 0; }
.additional-field { display: grid; gap: 12px; padding: 16px; border: 1px solid var(--border, #dce2df); border-radius: 14px; min-width: 0; }
.additional-field__toolbar { display: grid; grid-template-columns: auto 1fr auto auto auto; align-items: center; gap: 6px; }
.additional-option { display: flex; flex-wrap: wrap; align-items: end; gap: 8px; padding-block: 8px; border-top: 1px solid #dce2df; }
.additional-option__name { flex: 1 1 150px; }
.additional-option__emoji { width: 64px; font-size: 20px; line-height: 1.6; }
.additional-option__symbol { flex: 1 1 110px; width: auto; max-width: 180px; }
.additional-option__tools { display: flex; gap: 2px; }
.demo-image-button:disabled { opacity: .5; cursor: default; }
.demo-additional { margin-block: 14px; min-width: 0; }
.demo-choice { display: flex; flex-wrap: wrap; gap: 10px; }
.demo-choice__option { display: inline-flex; align-items: center; gap: 6px; padding: 8px 12px; border: 1px solid #dce2df; border-radius: 10px; line-height: 1.6; }
@media (max-width: 420px) { .additional-field { padding: 10px; } .additional-option__tools { width: 100%; justify-content: flex-end; } }
