
:root{--cream:#f9f5f0;--paper:#fffdfa;--pink:#f0e3df;--blush:#f8eeec;--wine:#783849;--wine2:#542839;--ink:#392e34;--muted:#8a7c7d;--line:#e9ddd6;--gold:#cda77b;--shadow:0 10px 35px rgba(81,48,50,.065);font-family:'DM Sans',system-ui,-apple-system,sans-serif;color:var(--ink)}
*{box-sizing:border-box}body{margin:0;background:var(--cream)}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,.serif{font-family:'Playfair Display',Georgia,serif}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #c4989c;outline-offset:3px} .app{max-width:1520px;min-height:100vh;display:flex;margin:auto}.sidebar{width:270px;flex:0 0 270px;position:sticky;top:0;height:100vh;padding:35px 22px 20px;background:#fff9f5;border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;margin:0 0 50px 8px;color:var(--wine2)}.brand-mark{height:40px;width:40px;background:#f4e3e5;border-radius:16px;display:grid;place-items:center;font-size:21px}.brand-title{font:600 20px 'Playfair Display',Georgia,serif;line-height:1.03}.brand small{font-size:10px;letter-spacing:2px;color:#a5888f;font-weight:700;text-transform:uppercase}.sidebar-label{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:#a99a97;padding:10px 14px 13px;font-weight:700}.nav{display:grid;gap:5px}.nav button{display:flex;align-items:center;text-align:left;gap:11px;color:#71636a;background:transparent;border:0;border-radius:12px;padding:12px 13px;width:100%;font-size:13px;font-weight:600;transition:.2s}.nav button:hover{background:#f3e8e4}.nav button.active{background:#f0e0e0;color:var(--wine2)}.nav .emoji{font-size:17px;width:24px;text-align:center}.sidebar-bottom{margin-top:auto;padding:18px 12px;border-top:1px solid var(--line);color:#9b8184;font-size:12px;line-height:1.7}.side-actions{display:flex;gap:9px;margin-top:14px}.side-actions button{background:transparent;border:1px solid #dfcfd0;color:#7b5362;border-radius:9px;padding:8px 10px;font-size:11px}.main{flex:1;min-width:0;padding:32px clamp(21px,4.1vw,66px) 85px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:31px}.eyebrow{color:#aa8992;letter-spacing:2.1px;text-transform:uppercase;font-weight:700;font-size:10px}.today{font-size:12px;color:#9a8a88;margin-top:7px}.top-actions{display:flex;align-items:center;gap:9px}.search{width:240px;display:flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:100px;padding:0 13px;background:var(--paper)}.search input{background:none;border:0;outline:0;min-width:0;width:100%;height:38px;color:var(--ink);font-size:12px}.search svg{flex-shrink:0}.primary{background:var(--wine);color:white;border:1px solid var(--wine);padding:12px 20px;border-radius:11px;font-size:12px;font-weight:700;box-shadow:0 4px 14px #7938491c;transition:.2s}.primary:hover{background:var(--wine2)}.outline{background:var(--paper);color:var(--wine);border:1px solid #e4cdd1;padding:12px 17px;border-radius:11px;font-size:12px;font-weight:700}.hero{position:relative;overflow:hidden;min-height:300px;display:flex;align-items:center;background:linear-gradient(115deg,#f1e0db 0%,#f8ece6 60%,#f9e6e1 100%);border:1px solid #eddbd6;border-radius:22px;padding:40px clamp(25px,4vw,50px);isolation:isolate;box-shadow:var(--shadow)}.hero-content{max-width:560px;position:relative;z-index:2}.hero h1{font-weight:500;font-size:clamp(29px,3vw,42px);line-height:1.25;color:#633449;letter-spacing:-.9px;margin:15px 0 17px}.hero h1 em{font-weight:400;color:#9f5c6e}.hero p{font-size:13px;line-height:1.95;color:#826a70;max-width:445px;margin-bottom:24px}.floral{position:absolute;right:-22px;top:-45px;width:37%;min-width:235px;height:385px;opacity:.95;transform:rotate(-5deg);z-index:1}.stem{position:absolute;width:3px;height:265px;background:#8b9982;top:95px;left:49%;transform:rotate(-22deg);border-radius:10px}.leaf{position:absolute;width:65px;height:24px;border-radius:100% 0 100% 0;background:#a9b8a2;transform:rotate(-24deg)}.leaf.l1{left:38%;top:206px}.leaf.l2{left:52%;top:259px;transform:rotate(152deg)}.flower{position:absolute;top:70px;left:32%;width:135px;height:135px}.petal{position:absolute;width:67px;height:75px;left:34px;top:29px;background:linear-gradient(125deg,#d69aa5,#e3b6b7);border-radius:70% 70% 60% 60%;transform-origin:50% 77%}.petal:nth-child(1){transform:rotate(0deg) translateY(-30px)}.petal:nth-child(2){transform:rotate(60deg) translateY(-30px)}.petal:nth-child(3){transform:rotate(120deg) translateY(-30px)}.petal:nth-child(4){transform:rotate(180deg) translateY(-30px)}.petal:nth-child(5){transform:rotate(240deg) translateY(-30px)}.petal:nth-child(6){transform:rotate(300deg) translateY(-30px)}.center{position:absolute;top:65px;left:58px;width:23px;height:23px;background:#e8c691;border-radius:50%;z-index:3}.decor-circle{position:absolute;border:1px solid #e9c3c0;width:340px;height:340px;right:-90px;top:-75px;border-radius:50%}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:15px;margin:34px 0 19px}.section-heading h2{color:#4f3844;font-size:25px;font-weight:500;margin:3px 0 0}.section-heading p{font-size:12px;color:#a19192;margin:0}.link-btn{border:0;background:transparent;color:var(--wine);font-size:12px;font-weight:700;padding:9px 0}.catgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.cat{position:relative;text-align:left;background:var(--paper);border:1px solid #eee4de;border-radius:17px;padding:23px 22px;min-height:170px;box-shadow:var(--shadow);transition:.2s;overflow:hidden}.cat:hover{border-color:#d5b2b7;transform:translateY(-2px)}.cat:after{content:'';position:absolute;height:90px;width:90px;right:-30px;bottom:-37px;background:var(--bg,#f3e3e5);border-radius:50%;opacity:.85}.cat-icon{display:grid;place-items:center;height:47px;width:47px;border-radius:14px;background:var(--bg,#f3e3e5);margin-bottom:17px;font-size:23px}.cat strong{font:600 17px 'Playfair Display',Georgia,serif;color:#5b4149;display:block}.cat p{font-size:11px;color:#998989;line-height:1.5;margin:6px 0 0}.cat small{position:absolute;right:21px;top:28px;color:#b3a5a3;font-size:11px}.lower{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:17px;align-items:stretch}.entries-box,.aside-note{min-height:195px;background:var(--paper);border:1px solid #eee4de;border-radius:17px;padding:19px 21px;box-shadow:var(--shadow)}.entry-list{display:grid;gap:10px}.entry{border:1px solid #f0e4e2;display:flex;align-items:center;text-align:left;gap:13px;width:100%;border-radius:12px;padding:13px;background:#fffdfb}.entry:hover{background:#fcf5f2}.entry-pic{width:47px;height:47px;flex:0 0 47px;border-radius:10px;background:#f5e7e5;display:grid;place-items:center;font-size:22px;background-size:cover;background-position:center}.entry-body{flex:1;min-width:0}.entry-body strong{font-size:13px;display:block;color:#60434b;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-body span{color:#ad9999;font-size:11px}.arrow{color:#ba999b}.empty{text-align:center;padding:18px 6px;color:#a49495;font-size:12px;line-height:1.8}.empty .icon{font-size:28px;display:block;margin:0 auto 8px}.aside-note{background:#f2e8e4;position:relative;overflow:hidden}.aside-note .eyebrow{margin-bottom:19px}.aside-note .big-quote{font:italic 20px/1.5 'Playfair Display',Georgia,serif;color:#79505c}.aside-note .sub{font-size:11px;color:#a2898e;margin-top:18px}.page-title{font:500 35px 'Playfair Display',Georgia,serif;color:#60404c;margin:10px 0 11px}.page-description{color:#927f83;font-size:13px;line-height:1.7;margin:0}.category-panel{background:#fffdfa;border:1px solid var(--line);border-radius:18px;padding:24px;min-height:200px}.filter-status{font-size:12px;color:#a38e93}.mood-tag{font-size:11px;color:#9b7682;background:#f8eded;padding:4px 8px;border-radius:20px}.mobile-bar{display:none}.modal-back{position:fixed;inset:0;background:rgba(38,28,33,.53);z-index:60;display:none;align-items:center;justify-content:center;padding:20px;overflow:auto}.modal-back.open{display:flex}.modal{background:var(--paper);border-radius:22px;width:min(100%,650px);max-height:min(90vh,860px);overflow:auto;padding:28px;box-shadow:0 25px 100px #2e111b3d}.modal-head{display:flex;gap:12px;justify-content:space-between;align-items:start;margin-bottom:24px}.modal-head h2{font-size:27px;font-weight:500;color:#663948;margin:5px 0 0}.close{background:#f7edeb;color:#7e6870;border:0;font-size:21px;border-radius:50%;height:35px;width:35px}.field{display:grid;gap:8px;margin-bottom:18px}.field label{font-weight:700;color:#6e535e;font-size:12px}.field input,.field select,.field textarea{border:1px solid #e9d8d9;border-radius:11px;padding:13px 14px;background:#fff;color:var(--ink);width:100%;font-size:13px;outline-color:#b98e9c}.field textarea{resize:vertical;min-height:185px;line-height:1.8}.fieldrow{display:grid;grid-template-columns:1fr 1fr;gap:14px}.modal-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:19px;flex-wrap:wrap}.hint{font-size:11px;color:#aa999a;line-height:1.5}.image-preview{max-width:100%;max-height:180px;object-fit:cover;border-radius:12px;display:none}.detail-content{white-space:pre-wrap;line-height:1.9;color:#63545b;font-size:14px}.detail-cover{max-width:100%;max-height:320px;object-fit:cover;border-radius:14px;margin-bottom:18px}.detail-meta{color:#a28b90;font-size:12px;display:flex;gap:9px;flex-wrap:wrap;margin-bottom:20px}.detail-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:23px}.danger{background:transparent;border:1px solid #e4c9cc;color:#a44e5b;border-radius:11px;padding:12px 17px;font-size:12px;font-weight:700}.footer{margin:42px 0 0;color:#b29f9e;font-size:11px;text-align:center}.hidden{display:none!important}.backup-toast{position:fixed;z-index:110;bottom:25px;right:25px;max-width:360px;padding:13px 18px;border-radius:12px;background:var(--wine2);color:white;font-size:12px;box-shadow:0 12px 35px #3b202a33;display:none}.backup-toast.visible{display:block}
@media(max-width:1100px){.sidebar{width:230px;flex-basis:230px;padding-left:12px;padding-right:12px}.main{padding-left:29px;padding-right:29px}.lower{grid-template-columns:1fr}.aside-note{min-height:150px}.catgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.app{display:block}.sidebar{display:none}.main{padding:23px 18px 106px}.topbar{margin-bottom:21px;align-items:flex-start}.topbar .eyebrow{font-size:9px}.today{font-size:11px}.search{width:40px;padding:0 10px;border-radius:14px}.search:focus-within{position:absolute;z-index:10;right:18px;top:58px;width:calc(100vw - 36px);box-shadow:0 10px 25px #bbb3}.search input{opacity:0}.search:focus-within input{opacity:1}.top-actions .primary{padding:10px 12px}.hero{padding:30px 24px;min-height:315px}.hero-content{max-width:84%}.hero h1{font-size:29px;max-width:310px}.hero p{font-size:12px}.floral{right:-74px;top:20px;transform:scale(.77) rotate(-5deg);opacity:.65}.decor-circle{right:-170px}.section-heading h2{font-size:23px}.catgrid{gap:11px}.cat{padding:18px 15px;min-height:164px}.cat strong{font-size:16px}.cat-icon{height:41px;width:41px;margin-bottom:15px}.cat small{top:20px;right:15px}.lower{gap:0}.aside-note{display:none}.mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fffbf8;border-top:1px solid var(--line);z-index:30;justify-content:space-around;padding:9px 8px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -5px 20px #5c2a300b}.mobile-bar button{border:0;background:transparent;font-size:10px;color:#8a7580;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:60px;padding:4px}.mobile-bar button.active{color:var(--wine);font-weight:700}.mobile-bar .ico{font-size:22px}.mobile-bar .add .ico{background:var(--wine);height:37px;width:37px;display:grid;place-items:center;color:white;border-radius:12px;font-size:25px;margin-top:-14px}.fieldrow{grid-template-columns:1fr}.modal-back{padding:10px}.modal{padding:22px 18px;max-height:93vh}.section-heading{margin-top:27px}.page-title{font-size:30px}}

/* Nuevas pantallas */
.statusline{display:flex;align-items:center;gap:7px;font-size:11px;color:#937d81;margin-top:14px}.statusdot{width:7px;height:7px;background:#c9a182;border-radius:50%}.statusdot.online{background:#789a74}.user-actions{margin-top:10px;display:flex;flex-wrap:wrap;gap:7px}.user-actions button{background:#fcf8f5;border:1px solid #e9d9d7;color:#7b5662;padding:8px 10px;border-radius:9px;font-size:11px}
.chat-wrap{max-width:860px;margin:0 auto}.chat-intro{background:linear-gradient(130deg,#f6e9e5,#fff9f6);border:1px solid #ebd9d6;border-radius:23px;padding:27px 32px;margin:24px 0 16px}.chat-intro h2{font-size:31px;margin:9px 0;color:#633e4d;font-weight:500}.chat-intro p{font-size:13px;color:#8e777c;line-height:1.8;max-width:580px;margin-bottom:0}.chat-stage{border:1px solid #eaded9;background:#fffefa;border-radius:19px;overflow:hidden;box-shadow:var(--shadow)}.chat-messages{padding:24px;min-height:250px;max-height:460px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.chat-bubble{border-radius:18px;padding:14px 17px;max-width:84%;font-size:13px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere}.chat-bubble.assistant{background:#f7eeeb;color:#644a53;align-self:flex-start;border-bottom-left-radius:6px}.chat-bubble.user{background:#783849;color:white;align-self:flex-end;border-bottom-right-radius:6px}.chat-meta{font-size:10px;opacity:.72;margin-top:6px}.chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:240px;text-align:center;color:#9b858a;font-size:13px;gap:9px}.chat-empty .chat-flower{font-size:32px}.chat-compose{border-top:1px solid #eee0dc;padding:17px;background:#fffaf7}.chat-compose form{display:flex;gap:10px;align-items:end}.chat-compose textarea{flex:1;background:white;border:1px solid #e8d7d7;border-radius:14px;padding:13px 15px;min-height:56px;max-height:170px;resize:vertical;font-size:13px;line-height:1.5;color:#49363e}.chat-compose button{min-height:49px}.chat-hint{font-size:11px;color:#a28e90;line-height:1.6;margin-top:9px}.chat-toolbar{display:flex;justify-content:flex-end;margin:0 0 10px}.chat-toolbar button{font-size:11px;border:0;background:transparent;color:#85525f;cursor:pointer}.chat-disabled{margin:15px 0;color:#8a6974;background:#f9eeeb;border:1px solid #ead7d5;padding:16px;border-radius:13px;font-size:12px;line-height:1.7}.share-notice{margin-top:8px;color:#9b7580}.gate{position:fixed;inset:0;background:rgba(245,235,230,.97);z-index:120;display:none;align-items:center;justify-content:center;padding:20px}.gate.open{display:flex}.gate-card{width:min(100%,430px);background:#fffdfa;border:1px solid #ead8d6;border-radius:26px;padding:37px 34px;box-shadow:0 20px 90px #482b3a20;text-align:center}.gate-icon{font-size:36px;margin-bottom:13px}.gate-card h2{font:500 29px 'Playfair Display',Georgia,serif;color:#683b4b}.gate-card p{font-size:13px;line-height:1.8;color:#917d82}.gate-card .field{text-align:left}.gate-card .primary{width:100%}.gate-card .link-btn{margin-top:13px}.gate-error{font-size:12px;color:#a74656;padding:8px 0;min-height:26px}.gate-card .field input{font-size:14px}.gate-secondary{font-size:12px;color:#9a858b}.offline-ribbon{position:fixed;top:9px;left:50%;transform:translateX(-50%);z-index:160;background:#794353;color:#fff;font-size:11px;border-radius:12px;padding:9px 14px;display:none}.offline-ribbon.show{display:block}.chat-stage button:disabled,.primary:disabled{opacity:.5;cursor:not-allowed}.install-help{border-radius:12px;background:#fbf4f0;color:#856873;padding:12px 14px;font-size:12px;line-height:1.6}.sw-update{position:fixed;right:15px;bottom:86px;border:1px solid #e1c8cd;border-radius:15px;background:#fff;padding:11px 15px;box-shadow:var(--shadow);font-size:12px;display:none;z-index:45}.sw-update.show{display:block}
@media(min-width:701px){.main{max-width:calc(100% - 230px)}}
@media(max-width:700px){.hero-content{max-width:92%}.top-actions{flex-shrink:0}.chat-intro{padding:24px}.chat-intro h2{font-size:26px}.chat-messages{padding:15px;min-height:280px;max-height:55vh}.chat-bubble{max-width:93%}.chat-compose{padding:12px}.chat-compose button{padding:10px 12px}.gate-card{padding:25px 22px}.sw-update{bottom:85px}}

/* Páginas adicionales: calendario, favoritos y borradores */
.quick-section{margin-top:15px;margin-bottom:8px}.quick-links{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 23px}.quick-links button{border:1px solid #ead8d5;background:#fffaf7;color:#7a4958;padding:10px 14px;border-radius:100px;font-size:12px;cursor:pointer}.quick-links button:hover{background:#f2e6e4}.quick-links span{background:#f0ddde;padding:2px 6px;border-radius:100px;margin-left:5px}.calendar-card{background:#fffaf7;border:1px solid #ecddda;border-radius:22px;padding:24px 27px;max-width:800px;box-shadow:var(--shadow)}.calendar-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}.calendar-top h2{text-transform:capitalize;font-size:25px;font-weight:500;margin:0}.cal-arrow{border:1px solid #ead9d4;color:#793849;background:white;width:36px;height:36px;border-radius:12px;cursor:pointer;font-size:24px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.cal-label{color:#998488;text-align:center;font-size:12px;padding:10px 2px}.cal-blank{min-height:62px}.cal-day{min-height:62px;border:1px solid #f1e4df;border-radius:13px;background:white;color:#6a4a55;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;font-size:13px}.cal-day.has-entry{background:#f5e5e6;border-color:#e4bec3;font-weight:700}.cal-day small{font-size:9px;background:#843e51;color:white;min-width:17px;height:17px;padding:2px 5px;border-radius:50%;line-height:13px}.cal-day.selected{box-shadow:0 0 0 2px #843e51 inset}.calendar-results{max-width:800px;margin-top:28px}.calendar-results .entry-list{background:#fffdfb;border:1px solid #ecddda;border-radius:19px;padding:14px}@media(max-width:630px){.calendar-card{padding:16px 12px}.calendar-grid{gap:3px}.cal-day,.cal-blank{min-height:43px}.cal-day{font-size:12px;border-radius:8px}.calendar-top h2{font-size:21px}.quick-links button{font-size:11px;padding:9px 11px}}

.calendar-top h2{text-transform:none}

/* Versión 3: filtros dentro de cada categoría y guardar conversaciones */
.category-tabs{display:flex;gap:10px;margin:23px 0 5px;flex-wrap:wrap}
.category-tabs button{border:1px solid #ead8d5;background:#fffaf7;color:#855e6b;padding:10px 16px;border-radius:100px;font-size:12px;font-weight:650;transition:.18s}
.category-tabs button:hover{background:#f4e8e6}.category-tabs button.active{background:#783849;color:white;border-color:#783849}
.category-tabs span{display:inline-block;padding-left:5px;font-size:11px;opacity:.8}
.search-results{margin-top:28px}.chat-toolbar{justify-content:flex-start;gap:12px;flex-wrap:wrap;align-items:center}
.chat-toolbar button{border:1px solid #ead8d5;background:#fffaf7;padding:10px 14px;border-radius:10px;font-size:12px;font-weight:650}
.chat-toolbar .save-chat{background:#783849;color:white;border-color:#783849}
.chat-toolbar button:disabled{opacity:.45;cursor:not-allowed}
.conversation-note{padding:12px 15px;background:#f5e7e6;border:1px solid #e9d3d4;border-radius:11px;font-size:12px;line-height:1.7;color:#74515c;margin:0 0 15px}
[hidden]{display:none!important}
@media(max-width:700px){.category-tabs{gap:7px}.category-tabs button{font-size:11px;padding:9px 11px}.chat-toolbar{gap:7px}.chat-toolbar button{font-size:11px;padding:9px 11px}}

/* v4: Google SSO y bienvenida por perfil */
.google-signin{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:14px 18px;margin-top:20px;border:1px solid #dfd6d1;border-radius:12px;background:#fff;color:#4d3a42;font-size:14px;font-weight:700;box-shadow:0 5px 15px #46303612}.google-signin:hover{background:#fff5f2;border-color:#d9b9bc}.google-signin:disabled{opacity:.6;cursor:wait}.user-actions{display:flex;gap:7px;flex-wrap:wrap}.user-actions button{font-size:11px;background:transparent;border:1px solid #dfcfd0;border-radius:8px;color:#7b5362;padding:6px 9px}.brand-title{line-height:1.2!important;overflow-wrap:anywhere}.gate-card .gate-secondary{margin-top:20px}

/* Acceso sencillo a ChatGPT: sin importador duplicado ni API */
.simple-talk .chat-intro{margin-bottom:22px}
.talk-card{max-width:700px;background:#fffdfb;border:1px solid #ebdcd8;border-radius:23px;box-shadow:0 12px 34px #6335490e;padding:31px;text-align:center}
.talk-symbol{width:70px;height:70px;margin:0 auto 15px;border-radius:23px;display:flex;align-items:center;justify-content:center;background:#f7e9e6;font-size:32px}
.talk-card h3,.talk-copy h3{font:500 25px 'Playfair Display',Georgia,serif;color:#683b4b;margin:0 0 13px}
.talk-card p,.talk-copy p{font-size:13px;line-height:1.8;color:#876f79;margin:0 0 20px}
.talk-card .talk-open{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:14px;font-weight:700;min-height:47px;min-width:220px}
.talk-card .talk-footnote{border-top:1px solid #f0e3df;margin:24px 0 0;padding-top:18px;font-size:12px;line-height:1.8;color:#927b83}
.talk-footnote strong{color:#704a59}
.talk-copy{max-width:700px;margin-top:19px;background:#faf1ee;border:1px solid #e5cfce;border-radius:19px;padding:24px}
.talk-copy label{display:block;color:#704d59;font-size:12px;font-weight:700;margin:8px 0}
.talk-copy textarea{width:100%;border:1px solid #e4d5d0;background:white;border-radius:12px;padding:13px;font:inherit;font-size:13px;line-height:1.65;min-height:140px;resize:vertical}
.talk-copy-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:14px}
@media(max-width:700px){.talk-card{padding:23px 20px}.talk-card .talk-open{width:100%}.talk-copy{padding:18px}}


/* iPhone y móviles: editor a tamaño real, sin zoom de enfoque automático.
   No se desactiva la ampliación manual del usuario (accesibilidad). */
@media (max-width:700px){
  /* Safari en iOS amplía automáticamente los controles con font-size < 16px.
     Usamos 16px en todos los controles editables, no solo en el título. */
  input:not([type="checkbox"]):not([type="radio"]),
  select,
  textarea{
    font-size:16px;
    min-width:0;
    max-width:100%;
  }
  #editorBackdrop{
    padding:0;
    overflow:hidden;
    align-items:stretch;
    justify-content:stretch;
  }
  #editorBackdrop .modal{
    width:100%;
    min-width:0;
    max-width:none;
    height:100vh;
    height:100dvh;
    max-height:100vh;
    max-height:100dvh;
    border-radius:0;
    box-shadow:none;
    padding:calc(14px + env(safe-area-inset-top,0px)) 16px calc(26px + env(safe-area-inset-bottom,0px));
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }
  #editorBackdrop .modal-head{
    position:sticky;
    top:0;
    z-index:3;
    align-items:center;
    padding:12px 0 15px;
    margin:0 0 18px;
    background:var(--paper);
    border-bottom:1px solid var(--line);
  }
  #editorBackdrop .modal-head h2{
    font-size:clamp(21px,6vw,25px);
    line-height:1.25;
    overflow-wrap:anywhere;
  }
  #editorBackdrop .close{
    flex:0 0 42px;
    width:42px;
    height:42px;
    font-size:24px;
    touch-action:manipulation;
  }
  #editorBackdrop .fieldrow{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:0;
  }
  #editorBackdrop .field{
    min-width:0;
    margin-bottom:17px;
  }
  #editorBackdrop .field input,
  #editorBackdrop .field select,
  #editorBackdrop .field textarea{
    font-size:16px;
    line-height:1.4;
    border-radius:12px;
  }
  #editorBackdrop .field input,
  #editorBackdrop .field select{
    min-height:48px;
  }
  #editorBackdrop .field textarea{
    min-height:210px;
    line-height:1.65;
  }
  #editorBackdrop .modal-actions{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:10px;
    align-items:stretch;
    margin-top:20px;
    padding-bottom:4px;
  }
  #editorBackdrop .modal-actions .hint{
    grid-column:1/-1;
    font-size:12px;
  }
  #editorBackdrop .modal-actions button{
    width:100%;
    min-height:46px;
    padding:11px 8px;
    line-height:1.4;
    font-size:12px;
    white-space:normal;
    touch-action:manipulation;
  }
  #editorBackdrop .image-preview{max-width:100%;height:auto}
}
/* En pantallas muy estrechas, mantener los botones cómodos y legibles. */
@media(max-width:350px){
  #editorBackdrop .modal{padding-left:13px;padding-right:13px}
  #editorBackdrop .modal-actions{grid-template-columns:minmax(0,1fr)}
}
