/* R1 original tokens, materials and components; scoped to the independent app. */
@font-face{font-family:"JH";src:url("/static/fonts/JingHuaLaoSong.woff2") format("woff2");font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url("/static/fonts/CormorantGaramond.woff2") format("woff2");font-display:swap}
:root { --pwa-bleed:0px;background-color:#f7f1e6 }
html, body { width:100%;min-height:100%;margin:0;overflow-x:hidden;overscroll-behavior-x:none;background-color:#f7f1e6 }
html { height:100% }
html[data-blueink-theme=night], html[data-blueink-theme=night] body { background-color:#141a2a }
body { min-height:100vh;min-height:100dvh;position:relative;isolation:isolate }
#blueink-r11 { --paper:#f5ede2;--paper-light:#faf5ed;--ink:#243858;--secondary:#656a7d;--blue:#2852b6;--blue-soft:#dbe8fa;--line:rgba(54,88,148,.16);--glass:rgba(255,255,255,.43);--glass-ui:rgba(253,250,245,.68);--glass-strong:rgba(252,248,242,.95);--ai:rgba(255,255,255,.46);--human:rgba(141,179,231,.22);--shadow:0 8px 24px rgba(47,61,89,.055);--font-body:'JH','Songti SC','Noto Serif CJK SC','STSong',serif;--font-ui:'PingFang SC','Noto Sans CJK SC','Microsoft YaHei',sans-serif;--font-number:'Cormorant Garamond','EB Garamond',Georgia,serif;--page-pad:22px;--top-safe:env(safe-area-inset-top,0px);--bottom-safe:env(safe-area-inset-bottom,0px) }
#blueink-r11[data-theme=night] { --paper:#15233c;--paper-light:#1b2d4a;--ink:#f1eee6;--secondary:#afb9ce;--blue:#adcbfc;--blue-soft:#294265;--line:rgba(165,196,245,.17);--glass:rgba(165,196,244,.07);--glass-ui:rgba(23,40,65,.77);--glass-strong:rgba(27,43,68,.97);--ai:rgba(199,218,250,.11);--human:rgba(116,163,228,.18);--shadow:0 8px 24px rgba(0,0,0,.12) }
#blueink-r11 * { box-sizing:border-box }
#blueink-r11, #blueink-r11 { margin:0;min-height:100%;color:var(--ink);background:#dddcd8 }
#blueink-r11 button, #blueink-r11 input, #blueink-r11 textarea { font:inherit }
#blueink-r11 button { cursor:pointer;border:0;color:inherit;background:none;-webkit-tap-highlight-color:transparent }
#blueink-r11 button:focus-visible, #blueink-r11 input:focus-visible, #blueink-r11 textarea:focus-visible { outline:2px solid var(--blue);outline-offset:3px }
#blueink-r11 button:disabled { opacity:.45;cursor:default }
#blueink-r11 img { max-width:100%;display:block }
#blueink-r11 svg { display:block }
#blueink-r11 a { color:var(--blue) }
#blueink-r11 { font-family:var(--font-body);font-size:14px;-webkit-font-smoothing:antialiased }
#blueink-r11 button { touch-action:manipulation }
#blueink-r11.preview-shell { width:100%;max-width:460px;height:100dvh;min-height:0;margin:0 auto;background:var(--paper);overflow:hidden;overflow-x:hidden;overscroll-behavior-x:none;position:relative;box-shadow:0 0 80px rgba(24,41,67,.10) }
#blueink-r11 .review-caption { height:24px;display:flex;align-items:center;justify-content:center;gap:8px;font:9px/1 var(--font-ui);letter-spacing:.05em;color:var(--secondary);border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:30 }
#blueink-r11 .review-caption span { opacity:.75 }
#blueink-r11 .review-caption b { font-size:8px;font-weight:400;letter-spacing:.12em }
#blueink-r11 .app { height:calc(100% - 24px);position:relative;isolation:isolate;overflow:hidden;overflow-x:hidden;overscroll-behavior-x:none;background:var(--paper) }
#blueink-r11 .app::before { content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 85% 16%,rgba(173,199,235,.19),transparent 45%),radial-gradient(ellipse at 9% 80%,rgba(216,198,164,.09),transparent 44%);pointer-events:none }
#blueink-r11[data-theme=night] .app::before { background:radial-gradient(ellipse at 90% 18%,rgba(82,127,190,.15),transparent 48%),radial-gradient(ellipse at 3% 90%,rgba(85,112,163,.10),transparent 40%) }
#blueink-r11 .app::after { content:"";position:absolute;inset:0;z-index:-1;opacity:.026;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 130 130' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23696a6e' filter='url(%23n)' d='M0 0h130v130H0z'/%3E%3C/svg%3E") }
#blueink-r11 .topbar { height:76px;padding:12px var(--page-pad) 6px;display:flex;align-items:center;gap:8px;position:relative;z-index:8;flex-shrink:0 }
#blueink-r11 .topbar h1 { font-size:24px;line-height:1.3;letter-spacing:.06em;font-weight:500;margin:0;flex:1 }
#blueink-r11 .topbar .actions { margin-left:auto;display:flex;gap:0;align-items:center }
#blueink-r11 .icon-btn { width:44px;height:44px;display:grid;place-items:center;flex-shrink:0;border-radius:12px;color:var(--blue) }
#blueink-r11 .icon-btn:active { background:var(--glass) }
#blueink-r11 .icon { width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round }
#blueink-r11 .tiny-icon { width:14px;height:14px }
#blueink-r11 .brand { width:104px;display:block }
#blueink-r11 .brand img { width:104px;height:63px;object-fit:contain }
#blueink-r11 .home-header { height:89px;padding-top:12px;padding-bottom:3px }
#blueink-r11 .screen { position:absolute;inset:0;display:flex;flex-direction:column;overflow-x:hidden;overscroll-behavior-x:none }
#blueink-r11 .content { flex:1;overflow:auto;overflow-x:hidden;overscroll-behavior:contain;overscroll-behavior-x:none;padding:0 var(--page-pad) calc(102px + var(--bottom-safe));scrollbar-width:none }
#blueink-r11 [data-scroll=home] { touch-action:pan-y }
#blueink-r11 .content::-webkit-scrollbar { display:none }
#blueink-r11 .content.nonav { padding-bottom:24px }
#blueink-r11 .glass { background:var(--glass);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.17);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px) }
#blueink-r11 .bottom-nav { position:absolute;bottom:calc(12px + var(--bottom-safe));left:12px;right:12px;height:68px;z-index:15;display:flex;padding:6px 5px;background:var(--glass-ui);border:1px solid var(--line);border-radius:18px;box-shadow:0 5px 20px rgba(41,53,75,.07),inset 0 1px 0 rgba(255,255,255,.25);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px) }
#blueink-r11 .nav-btn { flex:1;min-width:0;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;position:relative;font:11px/1.3 var(--font-ui);color:var(--secondary);padding:0 }
#blueink-r11 .nav-icon { height:28px;width:29px;object-fit:contain;filter:saturate(.8);opacity:.79;transition:opacity .16s,filter .16s }
#blueink-r11 .nav-btn.active { color:var(--blue);font-weight:500 }
#blueink-r11 .nav-btn.active .nav-icon { filter:saturate(1.05);opacity:1 }
#blueink-r11 .nav-btn.active::after { content:"";position:absolute;bottom:-3px;width:11px;height:2px;background:var(--blue);border-radius:10px;opacity:.45 }
#blueink-r11[data-theme=night] .nav-icon { filter:saturate(.85) brightness(1.2);opacity:.8 }
#blueink-r11[data-theme=night] .nav-btn.active .nav-icon { filter:brightness(1.2);opacity:1 }
#blueink-r11 .home-hero { position:relative;height:273px;margin:0 -3px 6px }
#blueink-r11 .hero-image { position:absolute;top:25px;right:-7px;width:calc(100% + 8px);max-width:none;height:auto;pointer-events:none }
#blueink-r11 .day-counter { position:absolute;left:6px;top:3px;z-index:1;color:var(--blue);width:48% }
#blueink-r11 .counter-label { font-size:12px;letter-spacing:.15em;line-height:1.5 }
#blueink-r11 .counter-number { display:flex;align-items:baseline;gap:8px;white-space:nowrap;height:83px }
#blueink-r11 .counter-number strong { font-family:var(--font-number);font-size:83px;line-height:1.05;font-weight:400;letter-spacing:-3px;font-variant-numeric:lining-nums }
#blueink-r11 .counter-number strong.four-digits { font-size:69px }
#blueink-r11 .counter-number span { font-size:15px }
#blueink-r11 .counter-since { font:10px/1.5 var(--font-ui);letter-spacing:.055em;color:var(--secondary) }
#blueink-r11 .section-kicker { display:flex;align-items:center;gap:7px;font:11px/1.5 var(--font-ui);color:var(--secondary);letter-spacing:.08em }
#blueink-r11 .section-kicker .icon { color:var(--blue);width:12px;height:12px;opacity:.7 }
#blueink-r11 .section-kicker time { margin-left:auto;font-size:10px;letter-spacing:.01em }
#blueink-r11 .quote-section { margin:5px 2px 26px;padding:17px 0 19px;border-top:1px solid var(--line);border-bottom:1px solid var(--line) }
#blueink-r11 .quote-section blockquote { font-size:21px;font-weight:400;line-height:1.85;margin:15px 0 12px;letter-spacing:.045em }
#blueink-r11 .quote-sign { font-size:11px;color:var(--secondary);text-align:right;padding-right:2px;letter-spacing:.07em }
#blueink-r11 .section-head { display:flex;align-items:center;justify-content:space-between;margin:0 0 13px }
#blueink-r11 .section-head h2 { font-size:16px;font-weight:500;letter-spacing:.06em;margin:0 }
#blueink-r11 .section-head .meta { font:10px var(--font-ui);color:var(--secondary) }
#blueink-r11 .trace-row { display:grid;grid-template-columns:34px 1fr;gap:11px;padding:11px 0 10px;position:relative }
#blueink-r11 .trace-symbol { width:31px;height:33px;object-fit:contain;padding:2px }
#blueink-r11 .trace-copy h3 { font-size:13px;font-weight:500;margin:0 0 4px }
#blueink-r11 .trace-copy p { margin:0;font:11px/1.7 var(--font-ui);color:var(--secondary) }
#blueink-r11 .trace-row+.trace-row { border-top:1px solid var(--line) }
#blueink-r11 .trace-copy time { float:right;font:10px/1.7 var(--font-ui);color:var(--secondary) }
#blueink-r11 .windows-label { margin:4px 0 12px;font:11px var(--font-ui);color:var(--secondary);letter-spacing:.04em }
#blueink-r11 .window-list { display:grid;gap:12px }
#blueink-r11 .window-row { width:100%;text-align:left;display:grid;grid-template-columns:79px minmax(0,1fr);gap:14px;align-items:center;padding:14px 15px 15px 10px;min-height:126px }
#blueink-r11 .window-art { width:79px;height:91px;object-fit:contain }
#blueink-r11 .window-copy { min-width:0 }
#blueink-r11 .window-meta { display:flex;align-items:center;justify-content:space-between;font:10px/1.5 var(--font-ui);color:var(--secondary);margin-bottom:7px }
#blueink-r11 .window-copy h2 { margin:0 0 8px;font-size:16px;font-weight:500;line-height:1.4;letter-spacing:.015em }
#blueink-r11 .window-copy p { margin:0;font:11.5px/1.7 var(--font-ui);color:var(--secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden }
#blueink-r11 .history { margin-top:30px }
#blueink-r11 .month { border-top:1px solid var(--line) }
#blueink-r11 .month-toggle { width:100%;height:48px;display:flex;align-items:center;justify-content:space-between;font-size:13px;padding:0 3px }
#blueink-r11 .month-right { display:flex;align-items:center;gap:8px;color:var(--secondary);font:10px var(--font-ui) }
#blueink-r11 .history-row { width:100%;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;text-align:left;padding:10px 3px;min-height:61px }
#blueink-r11 .history-row img { width:28px;height:28px;object-fit:contain;opacity:.75 }
#blueink-r11 .history-row strong { font-size:12.5px;font-weight:400;display:block }
#blueink-r11 .history-row small { display:block;font:10px/1.6 var(--font-ui);color:var(--secondary);margin-top:3px }
#blueink-r11 .history-row time { font:10px var(--font-ui);color:var(--secondary) }
#blueink-r11 .empty-note { font:12px/1.8 var(--font-ui);color:var(--secondary);padding:16px 3px }
#blueink-r11 .search-field { width:100%;display:flex;align-items:center;gap:8px;background:var(--glass);border:1px solid var(--line);border-radius:12px;padding:6px 12px;margin:0 0 13px }
#blueink-r11 .search-field input { width:100%;height:32px;background:transparent;border:0;font:13px var(--font-ui);color:var(--ink);outline:none }
#blueink-r11 .chat-header { height:68px;padding:8px 12px;background:var(--glass-ui);border-bottom:1px solid var(--line);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px) }
#blueink-r11 .chat-heading { flex:1;min-width:0;text-align:center }
#blueink-r11 .chat-heading h1 { font-size:16px;font-weight:500;margin:0;line-height:1.4;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis }
#blueink-r11 .chat-heading p { font:10px/1.5 var(--font-ui);color:var(--secondary);margin:3px 0 0 }
#blueink-r11 .chat-scroll { flex:1;overflow:auto;overscroll-behavior:contain;scrollbar-width:none;padding:0 14px 14px;min-height:0 }
#blueink-r11 .chat-scroll::-webkit-scrollbar { display:none }
#blueink-r11 .day-divider { text-align:center;display:flex;align-items:center;gap:13px;color:var(--secondary);font:10px var(--font-ui);margin:20px 30px }
#blueink-r11 .day-divider::before, #blueink-r11 .day-divider::after { content:"";height:1px;flex:1;background:var(--line) }
#blueink-r11 .msg { display:flex;align-items:flex-start;gap:8px;margin:13px 0 0 }
#blueink-r11 .avatar { width:32px;height:32px;flex:0 0 32px;overflow:hidden;border-radius:50%;border:1px solid var(--line);background:var(--blue-soft) }
#blueink-r11 .avatar img { width:100%;height:100%;object-fit:cover }
#blueink-r11 .bubble-stack { display:flex;flex-direction:column;align-items:flex-start;gap:7px;max-width:calc(100% - 65px) }
#blueink-r11 .speaker { font:10px/1.1 var(--font-ui);color:var(--secondary);margin:1px 0 0 2px }
#blueink-r11 .bubble { background:var(--ai);border:1px solid rgba(255,255,255,.26);border-radius:5px 13px 13px 13px;padding:9px 12px;font-size:13.5px;line-height:1.55;box-shadow:0 3px 13px rgba(29,55,90,.035),inset 0 1px 0 rgba(255,255,255,.16);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);overflow-wrap:anywhere;max-width:100% }
#blueink-r11 .msg.user { flex-direction:row-reverse }
#blueink-r11 .msg.user .bubble-stack { align-items:flex-end }
#blueink-r11 .msg.user .bubble { background:var(--human);border-color:rgba(87,137,203,.12);border-radius:13px 5px 13px 13px }
#blueink-r11 .msg.user .speaker { margin-right:2px }
#blueink-r11 .message-time { font:9px/1.3 var(--font-ui);color:var(--secondary);margin:0 3px }
#blueink-r11 .thinking-toggle { font:10px/1.3 var(--font-ui);color:var(--secondary);display:flex;align-items:center;gap:5px;padding:2px }
#blueink-r11 .thinking-body { font:11px/1.7 var(--font-ui);color:var(--secondary);border-left:1px solid var(--line);padding-left:10px }
#blueink-r11 .composer { flex-shrink:0;padding:10px 14px calc(9px + var(--bottom-safe));background:var(--glass-ui);border-top:1px solid var(--line);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);z-index:4 }
#blueink-r11 .composer-box { border:1px solid var(--line);background:var(--glass);border-radius:15px;padding:9px 10px 4px }
#blueink-r11 .composer textarea { display:block;width:100%;resize:none;min-height:30px;max-height:96px;padding:2px 4px;background:none;color:var(--ink);border:0;outline:none;font:16px/1.5 var(--font-body) }
#blueink-r11 .composer textarea::placeholder { color:var(--secondary);opacity:.66;font-size:13px }
#blueink-r11 .compose-tools { display:flex;align-items:center;gap:1px;height:40px }
#blueink-r11 .compose-tools .icon-btn { height:40px;width:40px }
#blueink-r11 .send-btn { margin-left:auto;width:34px!important;height:34px!important;background:var(--blue);color:var(--paper-light);border-radius:50% }
#blueink-r11 .send-btn .icon { width:18px;height:18px }
#blueink-r11 .send-btn:active { background:var(--blue);opacity:.8 }
#blueink-r11 .local-save { font:9px var(--font-ui);color:var(--secondary);margin-left:auto;margin-right:10px;opacity:.7 }
#blueink-r11 .memory-stage { position:relative;height:197px;margin:0 -6px 18px }
#blueink-r11 .memory-stage>img { width:100%;position:absolute;bottom:0;pointer-events:none }
#blueink-r11 .star-node { position:absolute;min-width:44px;min-height:44px;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;z-index:2 }
#blueink-r11 .star-node .icon { width:18px;height:18px;color:var(--blue);fill:var(--blue-soft) }
#blueink-r11 .memory-connections { position:absolute;inset:0;width:100%;height:100%;color:var(--blue);opacity:.3;pointer-events:none }
#blueink-r11 .entry-list { border-top:1px solid var(--line) }
#blueink-r11 .entry-row { display:grid;grid-template-columns:43px 1fr 20px;gap:12px;align-items:center;min-height:71px;width:100%;padding:12px 0;border-bottom:1px solid var(--line);text-align:left }
#blueink-r11 .entry-row>img { width:40px;height:40px;object-fit:contain }
#blueink-r11 .entry-row h2 { font-weight:500;font-size:14px;margin:0 0 4px }
#blueink-r11 .entry-row p { font:11px/1.6 var(--font-ui);color:var(--secondary);margin:0 }
#blueink-r11 .memory-quote { font-size:16px;line-height:1.9;margin:26px 0 6px }
#blueink-r11 .memory-source { font:10px var(--font-ui);color:var(--secondary) }
#blueink-r11 .profile-hero { display:grid;grid-template-columns:1fr 139px;align-items:center;gap:9px;margin:0 0 20px;min-height:109px }
#blueink-r11 .profile-hero img { width:139px }
#blueink-r11 .profile-hero p { font-size:16px;line-height:1.85;margin:0 }
#blueink-r11 .growth-note { padding:15px 16px;margin:0 0 24px }
#blueink-r11 .growth-note h2 { font-size:14px;font-weight:500;margin:0 0 9px }
#blueink-r11 .growth-note p { font:12px/1.8 var(--font-ui);color:var(--secondary);margin:0 }
#blueink-r11 .expression-row { min-height:60px }
#blueink-r11 .expression-row>img { height:32px;width:35px }
#blueink-r11 .shelf { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-bottom:2px solid var(--line);margin:0 0 27px;padding:6px 1px 17px;position:relative }
#blueink-r11 .shelf::after { content:"";position:absolute;height:6px;bottom:-7px;left:2px;right:2px;background:linear-gradient(var(--line),transparent);opacity:.3 }
#blueink-r11 .shelf-item { padding:0;min-height:114px;display:flex;flex-direction:column;align-items:center;gap:9px;justify-content:flex-end }
#blueink-r11 .shelf-item img { width:100%;height:80px;object-fit:contain }
#blueink-r11 .shelf-item span { font-size:12px;letter-spacing:.03em }
#blueink-r11 .pet-rest { display:flex;align-items:center;justify-content:center;gap:23px;margin:2px 0 12px }
#blueink-r11 .pet-rest img { width:129px;height:97px;object-fit:contain }
#blueink-r11 .pet-rest p { font-size:12px;line-height:1.9;color:var(--secondary) }
#blueink-r11 .daily-prose { font-size:15px;line-height:2.15;padding:5px 7px 28px }
#blueink-r11 .daily-prose h2 { font-size:12px;color:var(--blue);font-weight:500;letter-spacing:.08em;margin:25px 0 11px }
#blueink-r11 .daily-prose p { margin:0 0 18px }
#blueink-r11 .daily-prose blockquote { margin:18px 0;padding:3px 0 3px 14px;border-left:2px solid var(--line);color:var(--secondary);font-size:13px }
#blueink-r11 .settings-row { display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px }
#blueink-r11 .switch { width:40px;height:24px;border-radius:99px;background:var(--blue);padding:3px }
#blueink-r11 .switch span { display:block;height:18px;width:18px;background:var(--paper-light);border-radius:50%;margin-left:16px }
#blueink-r11 .switch.off { background:var(--line) }
#blueink-r11 .switch.off span { margin-left:0 }
#blueink-r11 .modal-backdrop { position:absolute;inset:0;z-index:50;display:flex;align-items:flex-end;background:rgba(16,31,53,.21);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px) }
#blueink-r11 .modal { width:100%;max-height:80%;overflow:auto;background:var(--glass-strong);border:1px solid var(--line);border-radius:22px 22px 0 0;padding:13px 22px 26px;box-shadow:0 -10px 40px rgba(25,40,68,.08) }
#blueink-r11 .modal-handle { height:3px;width:30px;background:var(--line);border-radius:3px;margin:0 auto 18px }
#blueink-r11 .modal-title { display:flex;align-items:center;justify-content:space-between;margin-bottom:10px }
#blueink-r11 .modal-title h2 { font-size:18px;font-weight:500;margin:0 }
#blueink-r11 .modal p { font-size:13px;line-height:1.9;color:var(--secondary) }
#blueink-r11 .modal .wide-button { width:100%;padding:12px;border-radius:12px;background:var(--glass);border:1px solid var(--line);margin:8px 0;text-align:left;font-size:13px }
#blueink-r11 .modal label { font:12px var(--font-ui) }
#blueink-r11 .modal input[type=text] { width:100%;height:43px;border:1px solid var(--line);background:var(--glass);border-radius:10px;padding:0 12px;margin:10px 0;color:var(--ink);font-size:14px }
#blueink-r11 .modal .confirm { display:block;background:var(--blue);color:var(--paper-light);text-align:center }
#blueink-r11 .toast { position:absolute;z-index:70;left:25px;right:25px;bottom:calc(132px + var(--bottom-safe));font:12px/1.8 var(--font-ui);padding:12px 16px;border-radius:12px;border:1px solid var(--line);background:var(--glass-strong);box-shadow:var(--shadow) }
#blueink-r11 .file-input { display:none }
#blueink-r11 .no-results { margin:30px 0;font-size:13px;line-height:1.8;color:var(--secondary) }
@supports not (backdrop-filter:blur(1px)) {
#blueink-r11 .glass, #blueink-r11 .bubble, #blueink-r11 .composer, #blueink-r11 .bottom-nav { background:var(--glass-strong) }
}
@media(min-width:600px) {
#blueink-r11 { background:#dededc;padding:24px }
#blueink-r11.preview-shell { height:min(900px,calc(100dvh - 48px));min-height:0;border-radius:24px;border:1px solid rgba(85,96,117,.16) }
#blueink-r11[data-theme=night] #blueink-r11 { background:#0e182c }
}
@media(max-width:370px) {
#blueink-r11 { --page-pad:18px }
#blueink-r11 .home-header { height:81px }
#blueink-r11 .home-hero { height:249px }
#blueink-r11 .counter-number strong { font-size:75px }
#blueink-r11 .counter-number { height:77px }
#blueink-r11 .quote-section { margin-bottom:22px;padding-top:14px;padding-bottom:17px }
#blueink-r11 .quote-section blockquote { font-size:20px;margin:11px 0 8px }
#blueink-r11 .window-row { grid-template-columns:72px minmax(0,1fr);gap:10px;padding:12px 11px 12px 8px }
#blueink-r11 .window-art { width:72px }
#blueink-r11 .window-copy h2 { font-size:15px }
#blueink-r11 .nav-icon { width:27px;height:27px }
#blueink-r11 .history { margin-top:24px }
#blueink-r11 .bubble-stack { max-width:calc(100% - 49px) }
#blueink-r11 .profile-hero { grid-template-columns:1fr 125px }
#blueink-r11 .profile-hero img { width:125px }
}
@media(prefers-reduced-motion:reduce) {
#blueink-r11 *, #blueink-r11 *::before, #blueink-r11 *::after { scroll-behavior:auto!important;transition:none!important;animation:none!important }
}
#blueink-r11 .compose-tools { height:44px }
#blueink-r11 .compose-tools .icon-btn { width:44px;height:44px }
#blueink-r11 .send-btn { width:44px!important;height:44px!important;background:none!important;position:relative }
#blueink-r11 .send-btn::before { content:"";position:absolute;inset:5px;border-radius:50%;background:var(--blue) }
#blueink-r11 .send-btn .icon { position:relative;z-index:1 }
#blueink-r11 .switch { min-width:44px;min-height:44px;background:transparent;position:relative;padding:13px 3px }
#blueink-r11 .switch::before { content:"";position:absolute;inset:10px 2px;background:var(--blue);border-radius:99px }
#blueink-r11 .switch.off { background:transparent }
#blueink-r11 .switch.off::before { background:var(--line) }
#blueink-r11 .switch span { position:relative;z-index:1 }
#blueink-r11 .review-caption { height:calc(24px + var(--top-safe));padding-top:var(--top-safe) }
#blueink-r11 .app { height:calc(100% - 24px - var(--top-safe)) }
/* F1-F5: geometry only. These rules deliberately keep the R1 palette/materials. */

/* F3 / F5 — a real header, scrolling body and navigation slot. */
#blueink-r11 { padding:0; font-size:14px; height:100dvh; min-height:0; color-scheme:light; }
#blueink-r11[data-theme=night] { color-scheme:dark; }
#blueink-r11 .app { height:100%; }
#blueink-r11 .screen { min-height:0; }
#blueink-r11 .topbar { height:calc(76px + var(--top-safe)); padding-top:calc(12px + var(--top-safe)); }
#blueink-r11 .home-header { height:calc(89px + var(--top-safe)); }
#blueink-r11 .chat-header { height:calc(68px + var(--top-safe)); padding-top:calc(8px + var(--top-safe)); }
#blueink-r11 .content { min-height:0; padding-bottom:12px; }
#blueink-r11 .content.nonav { padding-bottom:calc(24px + var(--bottom-safe)); }
#blueink-r11 .bottom-nav { position:relative; inset:auto; flex:0 0 68px; margin:0 12px calc(12px + var(--bottom-safe)); }
#blueink-r11 .home-hero { height:auto; padding-top:25px; margin:0 -3px 20px; }
#blueink-r11 .hero-image { position:relative; top:auto; right:auto; width:calc(100% + 8px); height:auto; margin-left:-1px; }
#blueink-r11 .quote-section { margin-top:0; }

/* F2 — the text counter stays in the original upper-left negative space. */
#blueink-r11 .counter-number { height:62px; gap:7px; }
#blueink-r11 .counter-number strong { font-size:59px; letter-spacing:-2px; }
#blueink-r11 .counter-number strong.four-digits { font-size:48px; letter-spacing:-1px; }
#blueink-r11 .counter-since { white-space:nowrap; }

/* F1 — separate optical sizing without allowing art to enter the text column. */
#blueink-r11 .window-row { grid-template-columns:120px minmax(0,1fr); gap:12px; padding:13px 14px 13px 9px; min-height:140px; }
#blueink-r11 .window-art-wrap { width:120px; display:grid; place-items:center; }
#blueink-r11 .window-art { width:120px; height:113px; object-fit:contain; }
#blueink-r11 .window-row[data-type=daily] .window-art { width:102px; height:105px; }
#blueink-r11 .window-copy h2 { overflow-wrap:anywhere; }
#blueink-r11 .window-meta { gap:5px; flex-wrap:wrap; }

/* F4 — give the enlarged profile image and gift their own columns. */
#blueink-r11 .profile-hero { grid-template-columns:minmax(0,1fr) minmax(0,60%); gap:10px; min-height:130px; }
#blueink-r11 .profile-hero img { width:100%; height:auto; }
#blueink-r11 .profile-hero p { overflow-wrap:anywhere; }
#blueink-r11 .surprise-row { display:grid; grid-template-columns:119px minmax(0,1fr); align-items:center; gap:20px; min-height:106px; width:100%; margin:18px 0 0; padding:0 5px; text-align:left; }
#blueink-r11 .surprise-row img { width:119px; height:auto; object-fit:contain; }
#blueink-r11 .surprise-row p { font-size:12px; line-height:1.9; color:var(--secondary); margin:10px 0; }

/* F5 — shelves keep their R1 finish; only the pet uses spare vertical space. */
#blueink-r11 .life-content { display:flex; flex-direction:column; }
#blueink-r11 .life-content > .shelf { flex-shrink:0; }
#blueink-r11 .life-content > .pet-rest { flex-shrink:0; width:100%; margin-top:auto; margin-bottom:0; min-height:109px; }
#blueink-r11 .life-content > .pet-rest img { flex-shrink:0; }

/* Functional states use the existing type, borders and surfaces. */
#blueink-r11 .wide-button { min-height:44px; padding:10px 12px; font-size:13px; text-align:left; }
#blueink-r11 .state-note { padding:18px 0; font:12px/1.8 var(--font-ui); color:var(--secondary); }
#blueink-r11 .error-note { border-left:2px solid var(--line); padding:12px; font:12px/1.8 var(--font-ui); }
#blueink-r11 .error-note button, #blueink-r11 .state-note button { color:var(--blue); min-height:44px; }
#blueink-r11 .detail-body { font-size:14px; line-height:1.9; overflow-wrap:anywhere; white-space:pre-wrap; }
#blueink-r11 .detail-body img { max-width:100%; height:auto; }
#blueink-r11 .settings-row select, #blueink-r11 .modal select, #blueink-r11 .modal textarea, #blueink-r11 .modal input { font:14px/1.5 var(--font-ui); color:var(--ink); background:var(--glass); border:1px solid var(--line); border-radius:10px; max-width:100%; padding:9px; }
#blueink-r11 .modal select, #blueink-r11 .modal textarea { width:100%; margin:10px 0; }
#blueink-r11 .modal-backdrop { padding-top:var(--top-safe); }
#blueink-r11 .modal { padding-bottom:calc(26px + var(--bottom-safe)); }
#blueink-r11 .reader-actions { display:flex; gap:8px; flex-wrap:wrap; }
#blueink-r11 .message-actions { display:flex; gap:6px; align-items:center; }
#blueink-r11 .message-actions button { font:10px/1.5 var(--font-ui); color:var(--secondary); min-height:28px; }
#blueink-r11 .bubble blockquote, #blueink-r11 .quote-preview { margin:0 0 8px; padding:6px 10px; border-left:2px solid var(--line); font-size:12px; line-height:1.7; color:var(--secondary); }
#blueink-r11 .daily-prose .message-actions { margin-bottom:18px; }
#blueink-r11 .daily-prose img { max-width:100%; }
#blueink-r11 .memory-stage { min-height:197px; }
#blueink-r11 .memory-connections { pointer-events:none; }
#blueink-r11 .entry-row span { min-width:0; }
#blueink-r11 .entry-row h2, #blueink-r11 .entry-row p { overflow-wrap:anywhere; }
#blueink-r11 .chat-scroll { overflow-anchor:none; }
#blueink-r11 [hidden] { display:none!important; }
#blueink-r11 [aria-busy=true] { cursor:progress; }
@media (max-width:370px) {
  #blueink-r11 { --page-pad:18px; }
  #blueink-r11 .home-header { height:calc(81px + var(--top-safe)); }
  #blueink-r11 .counter-number { height:58px; }
  #blueink-r11 .counter-number strong { font-size:55px; }
  #blueink-r11 .counter-number strong.four-digits { font-size:44px; }
  #blueink-r11 .window-row { grid-template-columns:111px minmax(0,1fr); gap:10px; padding:12px 11px 12px 8px; }
  #blueink-r11 .window-art-wrap { width:111px; }
  #blueink-r11 .window-art { width:111px; height:108px; }
  #blueink-r11 .window-row[data-type=daily] .window-art { width:95px; height:101px; }
  #blueink-r11 .profile-hero { grid-template-columns:minmax(0,1fr) minmax(0,57%); }
  #blueink-r11 .profile-hero img { width:100%; }
  #blueink-r11 .surprise-row { grid-template-columns:110px minmax(0,1fr); gap:16px; }
  #blueink-r11 .surprise-row img { width:110px; }
}
@media (min-width:600px) {
  #blueink-r11.preview-shell { height:min(900px,calc(100dvh - 48px)); margin:24px auto; }
}

/* Keep R1 text rhythm when the adapters supply variable-length real records. */
#blueink-r11 .quote-section blockquote { text-wrap:balance; }
#blueink-r11 .growth-note > .wide-button { padding:10px 0 0; min-height:28px; font-size:11px; color:var(--blue); }
#blueink-r11 .wide-button > .icon, #blueink-r11 .settings-row button > .icon { display:inline-block; vertical-align:middle; }
#blueink-r11 .expression-row p { display:none; }
#blueink-r11 .trace-row { width:100%; text-align:left; color:var(--ink); }
#blueink-r11 .thinking-toggle { display:block; max-width:100%; }
#blueink-r11 .thinking-toggle summary { cursor:pointer; padding:4px 0; }
#blueink-r11 .thinking-toggle .detail-body { font:11px/1.7 var(--font-ui); margin:6px 0; color:var(--secondary); border-left:1px solid var(--line); padding-left:10px; }

/* Approved SoftGlass supplement: independent images, no new site palette. */
#blueink-r11 .softglass-decor { display:block; height:auto; object-fit:contain; flex-shrink:0; pointer-events:none; user-select:none; }
#blueink-r11 .softglass-logo { width:104px; height:auto; mix-blend-mode:multiply; }
#blueink-r11 .softglass-heart { width:116px; max-width:100%; margin:0 auto; }
#blueink-r11 .softglass-divider { width:152px; margin:16px auto 22px; opacity:.82; }
#blueink-r11 .quote-section + .softglass-divider { margin-top:-14px; margin-bottom:23px; }
#blueink-r11 .softglass-bookmark { width:38px; }
#blueink-r11 .softglass-readingTop { width:310px; max-width:100%; margin:4px auto 22px; }
#blueink-r11 .softglass-readingBottom { width:286px; max-width:100%; margin:26px auto 6px; }
#blueink-r11[data-theme=night] .softglass-decor:not(.softglass-logo) { opacity:.8; filter:brightness(.92); }
#blueink-r11 .control-pair { display:grid; grid-template-columns:1fr 116px 1fr; align-items:start; gap:8px; max-width:336px; margin:24px auto 0; }
#blueink-r11 .control-pair > .softglass-heart { align-self:start; margin-top:16px; }
#blueink-r11 .control-person { min-width:0; text-align:center; }
#blueink-r11 .control-person > img { width:72px; height:72px; object-fit:cover; border-radius:50%; margin:0 auto; border:1px solid var(--line); }
#blueink-r11 .control-name { margin:12px 0 0; font-size:15px; line-height:1.5; font-weight:400; letter-spacing:.08em; }
#blueink-r11 .control-links { padding:0 14px; background:var(--glass); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); }
#blueink-r11 .control-links > button { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:67px; padding:14px 0; text-align:left; font-size:14px; }
#blueink-r11 .control-links > button + button { border-top:1px solid var(--line); }
#blueink-r11 .control-links small { display:block; margin-top:5px; color:var(--secondary); font:11px/1.5 var(--font-ui); }
#blueink-r11 .appearance-preview { position:relative; padding:21px 18px; margin:12px 0 24px; }
#blueink-r11 .appearance-preview > .softglass-bookmark { position:absolute; right:15px; top:9px; }
#blueink-r11 .appearance-preview > p { margin:0; padding-right:48px; font-size:16px; line-height:1.8; }
#blueink-r11 .appearance-preview > small { display:block; margin-top:12px; color:var(--secondary); font:11px/1.5 var(--font-ui); }
#blueink-r11 .reading-sheet { padding-top:8px; }
#blueink-r11 .reading-title { display:flex; align-items:center; gap:14px; margin:0 0 20px; }
#blueink-r11 .reading-title h1, #blueink-r11 .reading-title h2 { flex:1; min-width:0; margin:0; font-size:20px; line-height:1.6; font-weight:500; }
#blueink-r11 .reading-title > .softglass-bookmark { flex:0 0 38px; }
#blueink-r11 .reading-body { font-size:15px; line-height:2; overflow-wrap:anywhere; white-space:pre-wrap; }
#blueink-r11 .reading-meta { margin:10px 0 22px; color:var(--secondary); font:11px/1.8 var(--font-ui); overflow-wrap:anywhere; }
#blueink-r11 .workbench-content > p { font-size:13px; line-height:1.9; color:var(--secondary); }
#blueink-r11 .workbench-content > .control-links { margin-top:18px; }
#blueink-r11 .bubble-group-middle .avatar, #blueink-r11 .bubble-group-bottom .avatar { visibility:hidden; }
#blueink-r11 .bubble-group-middle .speaker, #blueink-r11 .bubble-group-bottom .speaker { display:none; }
#blueink-r11 .bubble-group-middle, #blueink-r11 .bubble-group-bottom { margin-top:7px; }
@media (max-width:370px) {
  #blueink-r11 .control-pair { grid-template-columns:1fr 104px 1fr; gap:7px; }
  #blueink-r11 .control-pair > .softglass-heart { width:104px; }
  #blueink-r11 .control-person > img { width:66px; height:66px; }
}
#blueink-r11 .control-name { display:block; }
#blueink-r11 .control-links .entry-row { border-bottom:0; }
#blueink-r11 .control-links .entry-row h2 { font-size:14px; font-weight:400; }
#blueink-r11 .workbench-content .entry-row { grid-template-columns:minmax(0,1fr) 20px; }
#blueink-r11 .content[data-scroll=settings] > .softglass-bookmark { margin:4px 6px 14px auto; }
#blueink-r11 .reading-title > div { flex:1; min-width:0; }
#blueink-r11 .message-time[data-action=message-menu] { padding:0; line-height:1.8; }
#blueink-r11 .message-actions { flex-wrap:wrap; }
#blueink-r11 .modal .message-actions button { min-height:44px; padding:8px 10px; font-size:13px; }
#blueink-r11 .header-spacer { display:block; flex:0 0 44px; }
#blueink-r11 .content[data-scroll=reading] { padding-top:12px; }
#blueink-r11 .content[data-scroll=reading] > .wide-button { display:flex; align-items:center; gap:6px; margin-top:18px; color:var(--secondary); font-size:12px; }
/* The approved divider replaces the lower hairline, keeping one light separator. */
#blueink-r11 .quote-section { border-bottom:0; padding-bottom:0; }
#blueink-r11 .quote-section > .softglass-divider { margin:14px auto 0; }
