/* Interaction review 06 — compact chats, editorial journey and calendar planner. */
.portrait-app{border-radius:15px;object-fit:cover;border:2px solid #ffffffe0;box-shadow:0 2px 5px #001e3c50}.dock{gap:8px}.dock-item{width:54px;height:54px}.unread-badge{position:absolute;top:-5px;right:-5px;min-width:20px;height:20px;padding:2px 5px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(#ed6b60,#b83033);color:white;font:700 11px/1 Arial,sans-serif;border:1.5px solid #ffe9de;box-shadow:0 1px 3px #411b2266;z-index:4}.thread-unread,.inline-unread{position:static;flex-shrink:0;min-width:17px;height:17px;padding:2px 4px;font-size:10px;background:#4c89bf;border-color:#d9edfb;box-shadow:none}.compact-messages .conversations{width:220px;padding:19px 10px;gap:4px}.compact-messages .conversation{position:relative;gap:10px;padding:12px 8px;min-height:76px}.compact-messages .conversation>span:nth-child(2){flex:1;min-width:0}.conversation strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.conversation small{font-size:9px;line-height:1.6}.guide-avatar{flex-shrink:0}.character-avatar{background:linear-gradient(#f5dbb9,#c08a57)!important;border-color:#9b724f!important;color:#fff4e5;font:23px Georgia,serif}.compact-messages .chat-header{padding:10px 16px;min-height:48px}.chat-header small{margin-left:8px;color:#7893a5;font-size:10px}.compact-messages .chat-log{padding:23px 25px}.compact-messages .message{width:fit-content;max-width:78%;margin-bottom:17px;padding:11px 15px;font-size:13px;line-height:1.65;position:relative}.compact-messages .message p{margin:0}.compact-messages .message.user{margin-left:auto}.compact-messages .reaction{right:-7px;bottom:-10px;min-width:23px;padding:0 4px;height:23px;font-size:12px;opacity:.45}.compact-messages .message:hover .reaction,.compact-messages .reaction:focus-visible{opacity:1}.auto-reaction{position:absolute;left:-10px;bottom:-8px;background:#fffdf5;border:1px solid #b4c7cb;border-radius:50%;height:25px;min-width:25px;display:grid;place-items:center;font-size:15px;box-shadow:0 1px 2px #294a5c22}.typing-message{display:flex;align-items:center;gap:5px;min-width:63px;min-height:38px;background:linear-gradient(#fff,#dbeefa);border:1px solid #a4c5dc;border-radius:16px!important;padding:10px 14px!important}.typing-message i{width:6px;height:6px;background:#7295af;border-radius:50%;animation:typing-bob 1.15s ease-in-out infinite}.typing-message i:nth-child(2){animation-delay:.16s}.typing-message i:nth-child(3){animation-delay:.32s}@keyframes typing-bob{0%,70%,100%{transform:translateY(0);opacity:.45}35%{transform:translateY(-4px);opacity:1}}.contact-nudge{font-size:9px;color:#658297;margin:8px 2px 0}.compact-messages .compose{padding:10px 16px 12px}.compact-messages .chat-day{margin-bottom:26px}.menu-active{left:54px}.menu-active>strong{display:block;font-size:10px;padding:8px 12px;color:#7991a3}.email-compose-form{display:flex;flex-direction:column;flex:1;min-height:0}.email-compose-form>label{display:flex;gap:10px;align-items:center;border-bottom:1px solid #c3d5df;color:#7791a3;padding:9px 16px;font-size:11px}.email-compose-form>label input{flex:1;background:transparent;border:0;border-radius:0;padding:3px;font-size:12px}.email-compose-form>textarea{flex:1;min-height:140px;border:0;border-radius:0;font:14px/28px Georgia,serif;background:repeating-linear-gradient(#fffdf4 0 27px,#d0dee5 27px 28px);color:#31546a;padding:15px 20px;resize:none}.email-verification{padding:10px 15px;border-top:1px solid #c7d8df;font-size:10px;background:#f1f6f4}.email-verification>label{display:inline-flex;align-items:center;gap:7px}.email-verification input{max-width:110px;font-size:11px}.email-verification .fine{margin:7px 0 0;font-size:9px}.verified-chip{background:#dcecdf;border:1px solid #8fae9c;color:#3d725b;border-radius:10px;padding:5px 9px;display:inline-block;font-size:10px}.email-compose-form .mail-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px}.mail-bottom>span{font-size:9px;color:#648092}.delivery-boundary{font-size:9px;padding:0 15px;line-height:1.5;color:#7c8e94;margin:8px 0 10px}.mail-subject{padding:22px 20px 12px;border-bottom:1px solid #e4ded0}.mail-subject small{font-size:11px;color:#6a8999}.mail-subject h2{font:24px Georgia,serif;line-height:1.25;margin:12px 0}.mail-subject p{font-size:10px;color:#7894a2}.mail-reply{padding:0 20px 25px}.form-error{font-size:11px;color:#a14e3e;background:#f8e8df;border:1px solid #d8aa97;border-radius:4px;margin:8px 15px;padding:10px}.mail-wire-state{font-size:9px;color:#688c76;margin-left:auto}.journey-app{color:#344f58;background:#faf8ef;min-height:100%}.journey-hero{display:flex;align-items:center;gap:30px;padding:30px 40px;background:radial-gradient(ellipse at 5% 40%,#dce8dc,transparent 60%),linear-gradient(#f9fbf3,#f2f2e9);border-bottom:1px solid #d3ddcf}.journey-hero>img{width:155px;height:185px;object-fit:cover;border:7px solid #fffff4;box-shadow:0 5px 15px #314e4b25;transform:rotate(-3deg);border-radius:3px}.journey-hero h1{font:31px/1.1 Georgia,serif;letter-spacing:-1px;margin:8px 0 14px;color:#334e4b}.journey-hero h1 em{font-weight:400;color:#637d64}.journey-hero p:last-child{font-size:11px;line-height:1.8;color:#74877e}.journey-nav{display:flex;gap:4px;padding:10px 32px;background:repeating-linear-gradient(#f2f3ed 0 2px,#e8ece5 2px 4px);border-bottom:1px solid #c7d0c6;position:sticky;top:0;z-index:2}.journey-nav button{font-size:11px;padding:8px 15px;border:1px solid transparent;border-radius:14px;color:#6b8176;white-space:nowrap}.journey-nav [aria-pressed=true]{background:linear-gradient(#fff,#d9e4db);border-color:#acbfae;color:#3f6654;box-shadow:0 1px 2px #38574c15}.journey-body{padding:26px 40px}.journey-body h2{font:27px/1.2 Georgia,serif;letter-spacing:-.5px;margin:23px 0 14px;color:#3c5953}.journey-facts{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #d6dfd3;padding:0 0 24px;margin-bottom:28px}.journey-facts>div{display:grid;gap:6px;border-right:1px solid #d9e2d5;padding-left:25px}.journey-facts>div:first-child{padding-left:0}.journey-facts>div:last-child{border:0}.journey-facts strong{font:29px Georgia,serif;color:#507363}.journey-facts span{font-size:10px;color:#7b8e7c}.journey-lead{font-size:12px;line-height:1.9;color:#718478;max-width:510px}.journey-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:25px 0}.journey-overview-grid>button{display:grid;gap:10px;align-content:start;text-align:left;background:#edf1e6;border:1px solid #cdd9c6;border-radius:7px;padding:21px 18px;transition:transform .22s,box-shadow .22s}.journey-overview-grid>button:hover{transform:translateY(-3px);box-shadow:0 4px 10px #315b4c15}.journey-overview-grid small{font-size:8px;letter-spacing:1.4px;color:#88967c}.journey-overview-grid strong{font:19px/1.25 Georgia,serif;color:#4f6d59}.journey-overview-grid span{font-size:10px;line-height:1.6;color:#81917d}.journey-actions{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}.journey-footer{border-top:1px solid #dbe3d3;margin-top:28px;padding-top:20px;display:flex;gap:17px;flex-wrap:wrap;font-size:10px;color:#779177}.journey-footer a{color:#627f6c;text-decoration:none}.career-timeline{padding-left:20px}.career-timeline article{position:relative;border-left:1px solid #bdcfbc;padding:0 0 36px 27px}.timeline-pin{position:absolute;left:-6px;top:4px;width:11px;height:11px;border-radius:50%;background:#8aa78e;border:2px solid #e4ecdc}.timeline-time{font-size:9px;letter-spacing:.6px;color:#8a9c88}.career-timeline h2{margin:10px 0 7px}.career-timeline article>strong{font-size:12px;color:#53745f}.career-team{font-size:11px;color:#8a9b84;margin:7px 0 16px}.career-timeline ul{padding-left:17px;font-size:12px;line-height:1.8;color:#667c6e}.career-timeline li{margin-bottom:10px}.career-tags{display:flex;gap:5px;flex-wrap:wrap;margin:15px 0 18px}.career-tags span{background:#e9eede;border:1px solid #d3dec9;border-radius:3px;padding:4px 6px;font-size:9px;color:#748b6d}.journey-projects{display:grid;gap:23px}.journey-projects article{position:relative;border:1px solid #d8e2d0;border-radius:6px;padding:22px 25px;background:linear-gradient(120deg,#f4f6eb,#fefff5)}.journey-projects article>small{font-size:8px;letter-spacing:1.2px;color:#8e9d84}.project-number{position:absolute;right:22px;top:17px;font:36px Georgia,serif;color:#dce5d2}.journey-projects h2{margin:10px 0 13px;max-width:80%}.journey-projects p{font-size:12px;line-height:1.85;color:#71836b}.journey-education{padding:12px 0 30px}.journey-education>span>svg{height:60px;width:60px;color:#91a48a;margin:10px 0 25px}.journey-education p:not(.eyebrow){font-size:12px;line-height:1.9;color:#7b8b73}.browser-destinations{display:flex;align-items:center;gap:5px;padding:9px 12px;background:linear-gradient(#e8f1f4,#d0e0e7);border-bottom:1px solid #9eb7c4}.browser-destinations>button{font-size:11px;padding:8px 14px;border-radius:13px;border:1px solid transparent}.browser-destinations [aria-pressed=true]{border-color:#8aaec2;background:linear-gradient(#fff,#c9e0ed);box-shadow:0 1px 2px #53798f20}.browser-destinations>a{margin-left:auto;font-size:10px}.browser-fallback{padding:8px 15px;background:#f0f4ed;border-top:1px solid #bfccbf;font-size:10px;color:#7a8f7a}.browser-fallback a{color:#4e7c77}.fixed-browser .dashboard-frame{min-height:400px}.profile-site-view{overflow:auto;background:#f1f4f5;height:100%;position:relative;padding:0 35px 40px}.profile-cover{height:145px;background:linear-gradient(115deg,#5f8293,#b4d2da);margin:0 -35px 0}.profile-site-view.github .profile-cover{background:linear-gradient(120deg,#2d3d42,#6f8b81)}.profile-site-view>img{width:115px;height:115px;object-fit:cover;border:5px solid #fff;border-radius:50%;margin-top:-45px;position:relative;box-shadow:0 3px 7px #22414c25}.profile-site-view>small{display:block;font-size:9px;letter-spacing:2px;color:#7896a5;margin-top:20px}.profile-site-view h1{font:31px Georgia,serif;margin:12px 0;color:#375b70}.profile-site-view>p{font-size:12px;color:#7c96a2;line-height:1.8}.profile-site-view>.button{margin-top:15px}.profile-site-view .fine{font-size:10px}
/* Planner grid: the vertical axis is time; columns are days, never a table of buttons. */
.calendar-six{background:#fffdf8}.calendar-six .cal-toolbar{gap:7px}.calendar-view-switch{display:flex;border:1px solid #b9b6ad;border-radius:12px;padding:2px;background:#eeede7;margin-left:auto}.calendar-view-switch button{font-size:10px;padding:5px 13px;border-radius:10px}.calendar-view-switch [aria-pressed=true]{background:linear-gradient(#fff,#dadfdc);box-shadow:0 1px 2px #526e7d30}.calendar-six .cal-toolbar>button:last-child{margin-left:0}.planner-sidebar{width:215px;padding:21px 14px;background:#f0ece1}.planner-sidebar h2{font:23px/1.25 Georgia,serif;margin-top:26px}.mini-month{padding:0 2px}.mini-month .calendar-month{font-size:11px;gap:4px}.mini-month .calendar-month strong{margin-right:auto}.mini-month .calendar-month button{height:22px;width:23px;font-size:17px}.calendar-grid>button.weekend{opacity:.35;cursor:not-allowed;background:#dce1dc;color:#8a938c}.calendar-grid>button.holiday{position:relative;color:#ac7233;background:#fff0cc}.calendar-grid>button.holiday i{height:3px;width:3px;background:#b6843f;border-radius:50%;position:absolute;bottom:3px}.calendar-grid>button.selected-day{background:#72998b!important;color:#fff!important;border-radius:50%}.holiday-legend{display:flex;align-items:center;gap:7px;font-size:9px;color:#9c855e;margin-top:10px}.holiday-legend i{height:6px;width:6px;border-radius:50%;background:#d5aa61}.planner-sidebar>label{margin:25px 0 18px}.calendar-keys{display:grid;gap:10px;font-size:9px;color:#7c8a7f;padding:15px 0;border-top:1px solid #d4d6c9}.calendar-keys span{display:flex;align-items:center;gap:7px}.calendar-keys i{height:9px;width:9px;border:1px solid #b6c7be;border-radius:2px}.key-open{background:#daeee4}.key-closed{background:#edf1ef}.key-weekend{background:#d9deda}.key-holiday{background:#fff0c9}.planner-sidebar>a{font-size:10px;color:#658b80}.planner-sidebar .fine{font-size:9px}.calendar-stage{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;background:#fffdf9}.planner-day-head{display:grid;grid-template-columns:64px repeat(var(--days),minmax(0,1fr));min-height:82px;flex-shrink:0;background:#fffdf7;border-bottom:1px solid #cdd7d2;box-shadow:0 1px 3px #304e4712;z-index:1}.planner-day-head>span{display:flex;align-items:flex-end;justify-content:center;font-size:8px;letter-spacing:1px;color:#a4afa6;padding:15px 0}.planner-day-head button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:9px 3px;border-left:1px solid #e0e5dc;position:relative}.planner-day-head small{font-size:9px;color:#87978c}.planner-day-head strong{font:28px Georgia,serif;color:#5a7f6e}.planner-day-head button.weekend{background:#e8ebe5;opacity:.65}.planner-day-head button.holiday{background:#fff4d8}.planner-day-head button.holiday strong{color:#b18a4a}.planner-day-head em{font-size:7px;color:#a18b5b;font-style:normal;max-width:90%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.calendar-scroll{flex:1;min-height:0;overflow:auto;scrollbar-gutter:stable}.planner-timeline{display:grid;grid-template-columns:64px repeat(var(--days),minmax(0,1fr));height:2496px;position:relative;background:#fffefa}.planner-hours{position:relative;background:#fdfcf7;border-right:1px solid #dce4db}.planner-hours>span{position:absolute;left:0;width:100%;font-size:9px;padding:5px 8px;text-align:right;color:#95a499}.planner-column{position:relative;min-width:0;border-right:1px solid #dfe6db;background:#fffefa}.planner-column.weekend{background:repeating-linear-gradient(135deg,#e6ebe5 0 5px,#e2e7e1 5px 6px)}.planner-column.holiday-column{background:#fffcf0}.planner-hour{position:absolute;left:0;right:0;height:104px;border-top:1px solid #dce5d9;background:repeating-linear-gradient(0deg,transparent 0 25px,#edf1e8 25px 26px)}.planner-hour.outside-work{background:repeating-linear-gradient(135deg,#edf1ed80 0 6px,#e4ebe480 6px 7px)}.time-band{position:absolute;right:13px;top:8px;font-size:8px;letter-spacing:1px;text-transform:uppercase;color:#b6c2b4}.calendar-time-slot{position:absolute;left:6px;right:6px;height:24px;border:1px solid #9ec5b1;border-left:3px solid #76a387;border-radius:4px;background:linear-gradient(#f1fff5,#d9eddf);color:#567f64;display:flex;align-items:center;justify-content:space-between;gap:6px;text-align:left;padding:3px 9px;z-index:1;transition:transform .2s,box-shadow .2s}.calendar-time-slot strong{font-size:10px;font-weight:500;white-space:nowrap}.calendar-time-slot small{font-size:8px;color:#97b29b}.calendar-time-slot:hover{transform:translateX(2px);box-shadow:0 2px 4px #315b4d25}.calendar-time-slot.outside-slot{opacity:.45;background:#d9dfd8;border-color:#ccd6cb;border-left-color:#bacabb;color:#98a894;cursor:default}.weekend-label{position:absolute;top:956px;left:0;right:0;text-align:center;color:#99a797;font-size:10px;line-height:1.7}.no-day-slots{position:absolute;top:1040px;left:10px;right:10px;font-size:9px;color:#acb7a7;text-align:center}.holiday-banner{position:absolute;top:800px;left:5px;right:5px;text-align:center;font-size:8px;padding:6px 3px;background:#fff0c6d0;border:1px solid #e1cc95;border-radius:3px;color:#b49350}.calendar-status{font-size:9px;color:#8c9d8e;padding:10px 14px;background:#f5f7ef;border-top:1px solid #d8e1d2}.cal-confirm-heading{padding:12px 15px;display:flex;align-items:center;gap:14px;background:#f3f5ed;border-bottom:1px solid #cddbc8;font-size:11px}.cal-confirm-heading>a{font-size:10px;margin-left:auto;color:#749078}.cal-confirm-copy{padding:0 18px}.calendar-stage>.cal-embed{margin:0;flex:1;min-height:500px;border:0;border-radius:0}
/* A slow, original watermelon startup; 6 seconds plus the staged desktop reveal. */
.boot-screen,.shutdown-transition{background:radial-gradient(ellipse at 50% 35%,#24504b,#0d262d 48%,#061922 85%)}.boot-watermelon{position:relative;width:185px;height:185px;display:grid;place-items:center;margin-bottom:16px;perspective:700px}.spinning-melon{height:120px;width:120px;padding:7px;animation:watermelon-turn 2.7s cubic-bezier(.4,.1,.4,1) infinite;transform-style:preserve-3d;filter:drop-shadow(0 8px 15px #0004)}.spinning-melon>svg{width:100%;height:100%;stroke:none}.melon-orbit{position:absolute;inset:0;border:1px solid #7cb7a73d;border-radius:50%;box-shadow:0 0 35px #8ac6b10a;transform:rotateX(62deg);animation:orbit-turn 8s linear infinite}.melon-orbit.orbit-two{inset:17px;transform:rotateY(52deg);animation-direction:reverse;border-color:#d1df9b33}.boot-screen h1,.shutdown-transition h1{font:34px Georgia,serif;letter-spacing:-.8px;margin:7px 0 12px;color:#d2e4d9}.boot-screen p,.shutdown-transition p{font-size:12px;color:#8facaa;margin:0 0 21px;min-height:22px}.power-screen progress{appearance:none;width:215px;height:4px;border:0;border-radius:5px;overflow:hidden;background:#41605b66;box-shadow:0 1px 0 #010d1555}.power-screen progress::-webkit-progress-bar{background:#496e615c}.power-screen progress::-webkit-progress-value{background:linear-gradient(90deg,#7bb591,#cadf99);border-radius:5px;transition:width .1s linear}.power-screen progress::-moz-progress-bar{background:#b1d09e}.boot-screen small,.shutdown-transition small{margin-top:24px;font-size:10px;letter-spacing:.6px;color:#648987}.closing-melon{opacity:.75}.closing-melon .spinning-melon{animation-direction:reverse}.shutdown-transition{animation:shutdown-veil 2.4s ease both}@keyframes watermelon-turn{0%{transform:rotateY(0) rotateZ(-9deg)}48%{transform:rotateY(180deg) rotateZ(7deg)}100%{transform:rotateY(360deg) rotateZ(-9deg)}}@keyframes orbit-turn{to{transform:rotateX(62deg) rotateZ(360deg)}}@keyframes shutdown-veil{from{opacity:0;backdrop-filter:blur(0)}to{opacity:1;backdrop-filter:blur(12px)}}.desktop-revealing .wallpaper{animation:desktop-wallpaper-in .8s ease-out both}.desktop-revealing #menu-mount{animation:desktop-menu-in .6s ease-out .18s both}.desktop-revealing #files-mount{animation:desktop-files-in .6s ease-out .38s both}.desktop-revealing #dock-mount .dock{animation:desktop-dock-in .65s cubic-bezier(.2,.8,.3,1) .48s both}.desktop-revealing .app-window{animation:desktop-app-in .55s cubic-bezier(.2,.8,.3,1) .65s both}@keyframes desktop-wallpaper-in{from{opacity:.35;filter:blur(10px);transform:scale(1.035)}to{opacity:1;filter:blur(0);transform:scale(1)}}@keyframes desktop-menu-in{from{opacity:0;transform:translateY(-25px)}to{opacity:1;transform:none}}@keyframes desktop-files-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes desktop-dock-in{from{opacity:0;transform:translate(-50%,75px)}to{opacity:1;transform:translate(-50%,0)}}@keyframes desktop-app-in{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}
@container app (max-width:800px){.calendar-six .planner-sidebar{width:175px;padding:15px 10px}.calendar-time-slot{left:3px;right:3px;padding:2px 5px}.calendar-time-slot small{display:none}.journey-hero{padding:26px;gap:22px}.journey-body{padding:22px 28px}.journey-hero>img{width:135px;height:160px}.journey-hero h1{font-size:29px}.compact-messages .conversations{width:190px}.compact-messages .message{max-width:88%}}
@container app (max-width:600px){.journey-hero{padding:22px;gap:18px}.journey-hero>img{width:100px;height:125px}.journey-hero h1{font-size:24px}.journey-hero p:last-child{font-size:10px}.journey-nav{padding:8px 12px;gap:1px}.journey-nav button{font-size:10px;padding:7px 10px}.journey-body{padding:22px}.journey-overview-grid{grid-template-columns:1fr}.journey-facts>div{padding-left:13px}.journey-facts strong{font-size:24px}.compact-messages .conversations{width:154px;padding:13px 6px}.compact-messages .conversation{padding:10px 5px;gap:6px}.compact-messages .guide-avatar{width:30px;height:30px;font-size:18px}.compact-messages .conversation strong{font-size:10px}.compact-messages .conversation small{font-size:8px}.compact-messages .thread-unread{min-width:15px;height:15px;font-size:8px}.compact-messages .chat-log{padding:16px}.compact-messages .message{font-size:12px}.compact-messages .chat-header small{font-size:8px}.email-compose-form .mail-bottom>span{display:none}.browser-destinations{gap:1px;padding:8px}.browser-destinations>button{font-size:10px;padding:7px 10px}.browser-destinations>a{font-size:9px;padding:5px 8px}.calendar-six .planner-sidebar{display:none}.calendar-time-slot strong{font-size:9px}.planner-day-head,.planner-timeline{grid-template-columns:50px repeat(var(--days),minmax(0,1fr))}}
@media(max-width:1100px){.dock-item{width:45px;height:45px}.dock{gap:7px}}
:root[data-theme=dark] .journey-app{background:#243e3f;color:#c5ddd0}:root[data-theme=dark] .journey-hero{background:linear-gradient(#39554b,#2b4845)}:root[data-theme=dark] .journey-hero h1,:root[data-theme=dark] .journey-body h2{color:#bfd6bc}:root[data-theme=dark] .journey-hero p:last-child,:root[data-theme=dark] .journey-lead{color:#93b7a3}:root[data-theme=dark] .journey-nav{background:#304d48}:root[data-theme=dark] .journey-projects article,:root[data-theme=dark] .journey-overview-grid>button{background:#304c47;color:#bfd9bb;border-color:#577763}:root[data-theme=dark] .email-compose-form>textarea{background:repeating-linear-gradient(#293f45 0 27px,#49626c 27px 28px);color:#d1e3e3}
:root[data-motion=reduced] *, :root[data-motion=reduced] *:before,:root[data-motion=reduced] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.compact-messages .reaction{width:30px;white-space:nowrap;line-height:18px;display:flex;align-items:center;justify-content:center;bottom:-9px;padding:0 4px}
.mini-month .calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.mini-month .calendar-grid>button{padding:0;min-width:0;width:100%;font-size:10px;height:25px}.calendar-card .calendar-grid>button{padding:0;min-width:0}.calendar-time-slot small{display:none}
.dashboard-frame-wrap{position:relative;display:flex;flex:1;min-height:0;background:#eef4ee}.dashboard-frame-wrap>.dashboard-frame{width:100%;height:100%}.dashboard-loading{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 35%,#f9fcf0,#e4eee5);display:flex;align-items:center;justify-content:center;flex-direction:column;color:#6b927a;transition:opacity .4s;pointer-events:none}.dashboard-loading h2{font:28px Georgia,serif;margin:22px 0 8px}.dashboard-loading p{font-size:11px;color:#9aaf99}.dashboard-loading>div{display:flex;gap:12px;margin-top:23px}.dashboard-loading i{width:70px;height:50px;border:1px solid #cadbc8;border-radius:6px;background:#eef5e8}.dashboard-loading i:nth-child(2){height:70px}.frame-loaded>.dashboard-loading{opacity:0;visibility:hidden}
/* Browser has no app-level search; portfolio-wide search stays in the system menu. */
.theme-browser>.titlebar .title-search{display:none}

/* Whole fruit → opening halves → original left-facing emblem. One finite six-second gesture. */
.melon-opening{width:310px;height:215px;margin:-15px 0 3px;perspective:800px}.melon-opening-art,.opening-slice>svg{stroke:none}.melon-opening-art{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 12px 15px #0003)}.opening-fruit,.opening-left,.opening-right,.opening-slice,.opening-shadow{transform-box:view-box;transform-origin:180px 120px}.opening-fruit{animation:fruit-poise 6s cubic-bezier(.35,.05,.25,1) var(--slice-elapsed) both}.opening-left{animation:fruit-part-left 6s cubic-bezier(.25,.7,.25,1) var(--slice-elapsed) both}.opening-right{animation:fruit-part-right 6s cubic-bezier(.25,.7,.25,1) var(--slice-elapsed) both}.opening-slice{animation:slice-arrive 6s cubic-bezier(.2,.75,.2,1) var(--slice-elapsed) both}.opening-cut{stroke-dasharray:158;stroke-dashoffset:158;animation:cut-light 6s ease var(--slice-elapsed) both}.opening-spark{animation:cut-spark 6s ease var(--slice-elapsed) both}.opening-shadow{animation:fruit-shadow 6s ease var(--slice-elapsed) both}
@keyframes fruit-poise{0%{opacity:0;transform:translateY(12px) rotate(-18deg) scale(.85)}12%{opacity:1}30%{transform:rotate(8deg)}39%,100%{opacity:1;transform:rotate(0)}}
@keyframes fruit-part-left{0%,40%{opacity:1;transform:translate(0,0) rotate(0)}59%{opacity:.9;transform:translate(-54px,8px) rotate(-24deg) scale(.93)}72%,100%{opacity:0;transform:translate(-85px,24px) rotate(-38deg) scale(.86)}}
@keyframes fruit-part-right{0%,40%{opacity:1;transform:translate(0,0) rotate(0)}59%{opacity:.9;transform:translate(54px,-8px) rotate(24deg) scale(.93)}72%,100%{opacity:0;transform:translate(85px,9px) rotate(38deg) scale(.86)}}
@keyframes slice-arrive{0%,40%{opacity:0;transform:translateX(20px) rotateY(-80deg) scale(.8)}51%{opacity:1}73%{opacity:1;transform:translateX(8px) rotateY(0deg) scale(1.15)}89%,100%{opacity:1;transform:translateX(8px) rotateY(0deg) scale(1)}}
@keyframes cut-light{0%,31%{opacity:0;stroke-dashoffset:158}33%{opacity:1;stroke-dashoffset:158}42%{opacity:1;stroke-dashoffset:0}49%,100%{opacity:0;stroke-dashoffset:0}}
@keyframes cut-spark{0%,37%{opacity:0}41%{opacity:.9}53%,100%{opacity:0}}
@keyframes fruit-shadow{0%{opacity:0;transform:scaleX(.8)}20%,40%{opacity:.38;transform:scaleX(1)}85%,100%{opacity:.15;transform:scaleX(.65)}}
:root[data-motion=reduced] .opening-fruit,:root[data-motion=reduced] .opening-cut,:root[data-motion=reduced] .opening-spark{display:none}:root[data-motion=reduced] .opening-slice{opacity:1;transform:translateX(8px)}
@media(prefers-reduced-motion:reduce){.opening-fruit,.opening-cut,.opening-spark{display:none}.opening-slice{opacity:1;transform:translateX(8px)}}
/* Review 08: date eligibility and delayed, floating message reactions. */
.calendar-grid>button.past-day{background:#dfe5df!important;color:#a4ada5!important;opacity:.42;cursor:not-allowed}.calendar-grid>button.today-day{position:relative;background:#eef2e9!important;color:#486f69!important;opacity:1;border:1.5px solid #567f73;border-radius:50%;box-shadow:inset 0 0 0 2px #fffff5}.calendar-grid>button.today-day:after{content:'';position:absolute;bottom:2px;left:calc(50% - 1.5px);width:3px;height:3px;border-radius:50%;background:#4e8277}.calendar-month button:disabled{opacity:.25;cursor:not-allowed}.compact-messages .has-reaction,.compact-messages .auto-reaction{animation:message-reaction-pop .42s cubic-bezier(.2,.8,.25,1.25) var(--reaction-elapsed,0ms) both}.compact-messages .has-reaction{opacity:1;background:#fffdf5;box-shadow:0 2px 4px #294a5c26}.compact-messages .auto-reaction{padding:2px 4px;border-radius:14px;min-width:27px;height:27px;bottom:-12px;left:-9px}.contact-photo-button{padding:0;display:inline-flex;vertical-align:middle;border-radius:50%;margin-right:8px}.contact-photo-button .contact-avatar{margin:0}.journey-hero>img{object-position:center 43%}.portrait-app{object-position:center 43%}
@keyframes message-reaction-pop{from{opacity:0;transform:translateY(7px) scale(.45)}65%{opacity:1;transform:translateY(-2px) scale(1.13)}to{opacity:1;transform:translateY(0) scale(1)}}
:root[data-motion=reduced] .compact-messages .auto-reaction,:root[data-motion=reduced] .compact-messages .has-reaction{animation:none!important}@media(prefers-reduced-motion:reduce){.compact-messages .auto-reaction,.compact-messages .has-reaction{animation:none!important}}
.journey-perspective{padding:0 0 22px;margin-bottom:20px;border-bottom:1px solid #cad7c8}.journey-perspective .audience-switch{display:flex;gap:5px;flex-wrap:wrap;margin:0 0 12px}.journey-perspective .audience-switch button{font-size:11px;padding:9px 12px;border-radius:18px;background:#e9eee2;border:1px solid #bccdb8;color:#5f7e6b}.journey-perspective .audience-switch [aria-pressed=true]{background:#486a5a;color:#f2f5e9;border-color:#486a5a}.journey-perspective>p{font-size:13px;line-height:1.6;color:#698270;margin:0 0 10px}.journey-perspective .journey-actions{margin:0;display:flex;gap:8px;flex-wrap:wrap}:root[data-theme=dark] .journey-perspective{border-color:#506c59}:root[data-theme=dark] .journey-perspective>p{color:#a6c0a9}.phone-layout .journey-perspective .audience-switch button{min-height:44px;font-size:12px}
