/* ===========================================================================
   AIOS REEL — staging only.

   THE PRODUCT'S OWN LOOK IS NOT REDRAWN HERE. aios.css is already loaded by
   every page that uses this file, so panels, borders, type and colour come
   from the product itself. What this file adds is:

     1. the ~260 rules aios.css anchors on `body[data-mode=...]`, rescoped onto
        `.aios-mock` so they apply to a div instead of the document (appended
        below the marker);
     2. the stage, the two hand-drawn devices, the pen and the captions.

   Every class here is prefixed `aios-reel-` so nothing can collide with the
   landing page's own `.aios-lp-*` or with the product's classes — the page
   already shares thirteen class names with aios.css deliberately, and a
   fourteenth by accident is how a marketing page quietly restyles itself.
   =========================================================================== */

.aios-reel {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #050505;
    border: 1px solid rgba(46,230,214,0.25);
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 24px 80px rgba(0,0,0,0.8);
    /* A stated ratio and a hidden overflow: the stage inside is a fixed
       1600x900 that gets scaled, so anything mis-sized is clipped here rather
       than pushing the page sideways. */
}
.aios-reel-stage { position: absolute; inset: 0; }
.aios-reel-inner {
    position: absolute; top: 0; left: 0; width: 1600px; height: 900px;
    transform-origin: top left;
    background:
        radial-gradient(120% 90% at 16% 110%, rgba(46,230,214,0.13), transparent 58%),
        radial-gradient(90% 70% at 90% -14%, rgba(26,159,161,0.10), transparent 60%),
        #050505;
    font-family: system-ui, sans-serif;
}
.aios-reel-layer { position: absolute; inset: 0; opacity: 0; }

/* --- captions ---------------------------------------------------------- */
.aios-reel-chapter { position: absolute; left: 92px; top: 50%; transform: translateY(-50%); max-width: 520px; }
.aios-reel-eyebrow {
    font-size: 14px; font-weight: 700; letter-spacing: 0.26em; text-transform: uppercase;
    color: var(--aios-accent, #2ee6d6); margin-bottom: 11px;
}
.aios-reel-line { font-size: 33px; font-weight: 500; line-height: 1.26; margin: 0; color: #fff; text-wrap: balance; }
.aios-reel-sub { margin: 11px 0 0; font-size: 18px; line-height: 1.45; color: #8a9c9b; text-wrap: balance; }
/* A LOWER THIRD OVER THE UI. Act III is full-bleed, so there is no margin left
   to put text in; it sits on its own scrim, always in the same place, and so
   cannot collide with a panel however the beat changes what is underneath.
   z-index above the product's modals, which are 1000 — a caption a dialog
   covers is a caption that stops existing for a fifth of the reel. */
.aios-reel-below {
    z-index: 1400; left: 0; right: 0; top: auto; bottom: 0; transform: none;
    max-width: none; text-align: center; padding: 76px 90px 34px;
    background: linear-gradient(180deg, rgba(5,5,5,0) 0%, rgba(5,5,5,0.84) 44%, rgba(5,5,5,0.97) 100%);
}
.aios-reel-below .aios-reel-eyebrow { margin-bottom: 8px; }
.aios-reel-below .aios-reel-line { font-size: 31px; }
.aios-reel-below .aios-reel-sub { max-width: 820px; margin: 9px auto 0; font-size: 17px; }

.aios-reel-callout {
    position: absolute; z-index: 1400; padding: 9px 15px; border-radius: 999px;
    background: rgba(5,5,5,0.94); border: 1px solid var(--aios-accent, #2ee6d6);
    font-size: 15px; font-weight: 600; color: var(--aios-accent, #2ee6d6);
    box-shadow: 0 8px 30px rgba(0,0,0,0.8); opacity: 0; white-space: nowrap;
}
.aios-reel-callout::after {
    content: ""; position: absolute; left: -7px; top: 50%; width: 11px; height: 11px;
    transform: translateY(-50%) rotate(45deg); background: rgba(5,5,5,0.94);
    border-left: 1px solid var(--aios-accent, #2ee6d6); border-bottom: 1px solid var(--aios-accent, #2ee6d6);
}
.aios-reel-callout-r::after {
    left: auto; right: -7px; border: 0;
    border-right: 1px solid var(--aios-accent, #2ee6d6); border-top: 1px solid var(--aios-accent, #2ee6d6);
}

/* --- open / close cards ------------------------------------------------- */
.aios-reel-card {
    position: absolute; inset: 0; display: flex; flex-direction: column;
    align-items: center; justify-content: center; gap: 18px; text-align: center; padding: 0 90px;
}
/* THE MARK CARRIES THE WORDMARK, because the product's does: aios.css's own
   .aios-logo-mark is a gradient tile with "AIOS" set in it at weight 800. A
   bare gradient square is not this product's logo, it is a swatch. */
.aios-reel-mark {
    width: 88px; height: 88px; border-radius: 24px;
    background: radial-gradient(circle at 30% 20%, #2ee6d6, #1a9fa1 55%, #0b3b3c 100%);
    box-shadow: 0 0 60px rgba(46,230,214,0.35);
    display: flex; align-items: center; justify-content: center;
    font-weight: 800; color: #fff; font-size: 21px; letter-spacing: 0.04em;
}
.aios-reel-card h3 { margin: 0; font-size: 54px; font-weight: 700; line-height: 1.14; color: #fff; text-wrap: balance; }
.aios-reel-card h3 em { font-style: normal; color: var(--aios-accent, #2ee6d6); }
.aios-reel-card p { margin: 0; font-size: 22px; color: #8a9c9b; text-wrap: balance; }

/* --- devices, drawn ------------------------------------------------------ */
.aios-reel-device {
    position: absolute; background: #0b0c0c; border: 1px solid rgba(255,255,255,0.13);
    box-shadow: 0 30px 90px rgba(0,0,0,0.9), inset 0 0 0 1px rgba(255,255,255,0.04);
}
.aios-reel-screen { position: absolute; background: #050505; overflow: hidden; }
/* 150 from the edge, not 96: the pen is 250px long at 34 degrees, so its
   ROTATED box reaches ~140px sideways from the tip. Clamping the pen instead
   would pull its tip off the line it is drawing, which is the one thing that
   has to stay true. */
.aios-reel-tablet { right: 150px; top: 150px; width: 740px; height: 530px; border-radius: 26px; padding: 15px; }
.aios-reel-tablet .aios-reel-screen { inset: 15px; border-radius: 14px; }
.aios-reel-phone { right: 210px; top: 100px; width: 312px; height: 640px; border-radius: 38px; padding: 13px; }
.aios-reel-phone .aios-reel-screen { inset: 13px; border-radius: 28px; }

.aios-reel-note { position: absolute; inset: 0; padding: 24px 28px; }
.aios-reel-note-sm { padding: 18px 16px; }
.aios-reel-note-head { display: flex; align-items: baseline; gap: 12px; padding-bottom: 11px; border-bottom: 1px solid rgba(46,230,214,0.25); }
.aios-reel-note-title { font-size: 16px; font-weight: 700; color: var(--aios-accent, #2ee6d6); letter-spacing: 0.04em; }
.aios-reel-note-sm .aios-reel-note-title { font-size: 13px; }
.aios-reel-note-date { font-size: 12px; color: #566362; }
.aios-reel-sec { margin-top: 16px; }
.aios-reel-sec h4 { margin: 0 0 7px; font-size: 12px; font-weight: 700; color: #8a9c9b; letter-spacing: 0.08em; }
.aios-reel-sec p { margin: 0 0 5px; font-size: 15px; line-height: 1.5; color: #fff; }
.aios-reel-inkwrap { position: relative; margin-top: 4px; }
/* ONE LINE, AND nowrap IS WHAT GUARANTEES IT. The pen writes a line by
   travelling left to right once, so a line count is a pass count: at 38px
   this text measured 782px against 652px of room, wrapped to two, and the
   stylus crossed the screen twice per phrase -- four times over the act --
   while the ink revealed in a single wipe underneath it. Caveat is also a
   webfont, so a fallback face could re-wrap a line that fits today; nowrap
   removes that whole class of regression rather than trusting the measure.
   34px measures 603px, which leaves 49px of room for a wider fallback. */
.aios-reel-ink {
    font-family: "Caveat", "Segoe Script", cursive; font-size: 34px; line-height: 1.3;
    color: #cdf3ef; white-space: nowrap; clip-path: inset(0 100% 0 0);
    /* max-content, so the box IS the words. As a block it filled the column
       (652px) while the second phrase is 478px of text, and both the clip
       percentage and the nib are measured against the box -- so the pen ran
       on for 174px of empty paper after the last character, and the reveal
       finished early. Sizing to the text makes "the end of the box" and "the
       end of the handwriting" the same place. */
    width: max-content; max-width: 100%;
}
.aios-reel-nib {
    position: absolute; width: 8px; height: 8px; border-radius: 50%;
    background: var(--aios-accent, #2ee6d6); box-shadow: 0 0 15px 4px rgba(46,230,214,0.55); opacity: 0;
}
.aios-reel-typed { font-size: 16px; line-height: 1.55; color: #fff; opacity: 0; }
.aios-reel-note-sm .aios-reel-typed { font-size: 13px; }
.aios-reel-on { opacity: 1; }
#ink2wrap, #sched-sec, #phone-line, #photo { opacity: 0; }

/* --- THE PEN, HELD IN A RIGHT HAND --------------------------------------
   The tip is the transform origin, because the tip is the fixed point of a pen
   in geometry as in life. Rotating about the top swung the writing end away
   from the line it was drawing and read as a stray rule across the note. */
.aios-reel-pen {
    position: absolute; width: 19px; height: 250px; opacity: 0;
    transform-origin: bottom center; transform: rotate(34deg);
}
.aios-reel-pen .b {
    position: absolute; inset: 0 0 16px 0; border-radius: 10px 10px 2px 2px;
    background: linear-gradient(96deg, #4a545a 0%, #2b3237 42%, #141a1e 100%);
    border: 1px solid rgba(255,255,255,0.2); box-shadow: 10px 16px 30px rgba(0,0,0,0.75);
}
.aios-reel-pen .m { position: absolute; left: -1px; right: -1px; bottom: 60px; height: 10px; background: linear-gradient(96deg, #8b979b, #394246); }
.aios-reel-pen .c {
    position: absolute; left: 50%; bottom: 0; width: 0; height: 0; transform: translateX(-50%);
    border-left: 9px solid transparent; border-right: 9px solid transparent; border-top: 19px solid #0f1418;
}
/* The heel of the hand, suggested rather than drawn: a drawn hand at this size
   is uncanny; a shadow is not. */
.aios-reel-hand {
    position: absolute; width: 230px; height: 190px; border-radius: 48% 52% 44% 56%; opacity: 0;
    background: radial-gradient(60% 60% at 40% 30%, rgba(20,24,28,0.92), rgba(8,10,12,0) 72%);
    filter: blur(2px);
}

/* --- the photo, drawn ---------------------------------------------------- */
.aios-reel-photo {
    position: relative; height: 146px; margin-top: 11px; border-radius: 9px; overflow: hidden;
    border: 1px solid rgba(255,255,255,0.14); background: #10161a;
}
.aios-reel-photo .sky { position: absolute; inset: 0 0 46% 0; background: linear-gradient(180deg,#35505c,#6d7f79 74%,#8b8f7f); }
.aios-reel-photo .front { position: absolute; inset: 46% 0 0 0; background: linear-gradient(180deg,#2a2320,#17120f); }
.aios-reel-photo .win { position: absolute; background: linear-gradient(180deg, rgba(255,214,150,0.85), rgba(190,140,70,0.35)); border-radius: 2px; }
.aios-reel-photo .door { position: absolute; background: #0d0a08; border: 1px solid rgba(255,214,150,0.35); border-radius: 3px 3px 0 0; }
.aios-reel-photo .sign { position: absolute; left: 9%; top: 36%; font-size: 12px; font-weight: 700; letter-spacing: 0.16em; color: #f2dcae; }
.aios-reel-photo .glow { position: absolute; inset: 0; background: radial-gradient(60% 40% at 50% 62%, rgba(255,200,120,0.2), transparent 70%); }

/* --- the real dashboard, and the real phone ------------------------------ */
.aios-reel-mockhost { position: absolute; inset: 0; overflow: hidden; }
/* Laid out at 1920x1080 and scaled to the frame. Laying it out AT the frame
   size made every panel 20% larger than it is on a real desktop. */
.aios-reel-mockhost .aios-mock {
    position: absolute; top: 0; left: 0; width: 1920px; height: 1080px;
    transform: scale(0.8333); transform-origin: top left;
    background: #050505; color: #fff; font-family: system-ui, sans-serif; overflow: hidden;
}
/* The dialogs are inset above the caption band. Both are full-height by design
   (F66), which puts SAVE and PUBLISH exactly where the lower third is — and
   those are the payoff of that beat. Inset, the way a director frames a shot,
   not redesigned. */
.aios-mock #aios-review-modal, .aios-mock #aios-handoff-modal { padding-bottom: 212px; }
/* The desktop dims behind the phone: a handset at full contrast over a live
   dashboard reads as two screens competing rather than one product in two
   places. */
.aios-phone-beat .aios-reel-mockhost { filter: brightness(0.28) saturate(0.7); }

.aios-reel-phoneshell {
    position: absolute; left: 50%; top: 50%; width: 388px; height: 812px;
    transform: translate(-50%,-50%); border-radius: 40px; padding: 13px; opacity: 0;
    background: #0b0c0c; border: 1px solid rgba(255,255,255,0.16);
    box-shadow: 0 40px 110px rgba(0,0,0,0.95);
}
.aios-reel-phonescreen { position: absolute; inset: 13px; border-radius: 29px; overflow: hidden; background: #050505; }
.aios-reel-phonescreen .aios-mock {
    position: absolute; top: 0; left: 0; width: 393px; height: 852px;
    transform: scale(0.9225); transform-origin: top left;
}
/* THE PHONE IS A VIEWPORT, SO IT NEEDS A DEFINITE HEIGHT -- and the rule above
   was losing the fight for it. `.aios-mock[data-mode="execution"]` is one class
   plus one attribute, exactly the same specificity as
   `.aios-reel-phonescreen .aios-mock`, and it is written later, so its
   `height: auto` won. The app then sized to its content: 573px of a 786px
   screen, so the notebook filled about two thirds of the phone and the rest
   was black.

   That `auto` is right for the page-scrolled layouts this mock is normally
   used in; it is wrong inside a fixed device shell. The attribute selector
   here takes the specificity to three and states the device height instead.

   The chain has to be unbroken from here down, which is why .aios-app is
   given the height as well: the rescoper turned the product's `100dvh` page
   rules into `100%` (correct -- the mock IS the viewport), and a percentage
   resolves against nothing if any link above it is auto. F66's lesson, one
   frame in. */
.aios-reel-phonescreen .aios-mock[data-mode] { height: 852px; overflow: hidden; }
.aios-reel-phonescreen .aios-mock[data-mode] > .aios-app {
    height: 100%; display: flex; flex-direction: column; min-height: 0;
    /* THE NAV'S HEIGHT WAS BEING RESERVED TWICE. In the product the page rules
       are `calc(100dvh - chrome)` -- measured against the VIEWPORT, so the
       app's own padding-bottom for the fixed nav sits inside that and nothing
       is counted twice. The rescoper turned dvh into `100%`, which resolves
       against the app's CONTENT box instead, so the padding came off first and
       the nav was subtracted again on top: 101px of nothing between the editor
       and the nav. The nav is fixed and the mock's transform is its containing
       block, so it overlays the foot of the phone either way. */
    padding-bottom: 0;
}

/* MOTION IS THE CONTENT HERE, so reduced motion cannot mean "animate less" —
   it means do not start. The engine holds each reel on its opening frame and
   the caption under it still says what the section is about. */
@media (prefers-reduced-motion: reduce) {
    .aios-reel { border-style: dashed; }
}

/* =====================================================================
   Below: aios.css's own body-anchored rules, rescoped onto .aios-mock.
   Generated — do not hand-edit; regenerate from aios.css.
   ===================================================================== */

.aios-mock{margin:0;padding:0; background:var(--aios-bg); color:var(--aios-text); font-family:system-ui, sans-serif;}
.aios-mock[data-mode="dashboard"]{height: 100%; overflow: hidden; display: flex; flex-direction: column;}
.aios-mock[data-mode="dashboard"] .aios-app{flex: 1; display: flex; flex-direction: column; height: 100%; padding: 10px 15px;}
.aios-mock[data-mode="dashboard"] .aios-grid{flex: 1; display: grid;
    grid-template-columns: clamp(250px, 24.82%, 350px) minmax(0, 1fr) clamp(250px, 24.82%, 350px);
    grid-template-rows: 100%; gap: 15px; overflow: hidden;}
.aios-mock[data-mode="overview"], .aios-mock[data-mode="execution"]{height: auto;
    overflow-y: auto;}
.aios-mock[data-mode="overview"] .aios-grid{grid-template-columns: minmax(0, 1fr);
    height: auto;}
.aios-mock[data-mode="overview"] .aios-col-side, .aios-mock[data-mode="overview"] .aios-col-main{height: auto; overflow: visible;}
.aios-mock[data-mode="overview"] .aios-col-side > .aios-card{flex: 0 0 auto !important; min-width: 0;}
.aios-mock[data-mode="execution"] .aios-grid{grid-template-columns: 1fr; height: auto;}
.aios-mock[data-mode="execution"] .aios-osbar-greeting{min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.aios-mock[data-mode="execution"] .aios-osbar-greeting .aios-date-numeric, .aios-mock[data-mode="execution"] .aios-osbar-greeting .aios-date-day{display: none;}
.aios-mock[data-mode="execution"] .aios-osbar-greeting{display: block;
    font-size: 13px;
    line-height: 1.25;
    max-height: 45px;
    overflow: hidden;}
.aios-mock[data-mode="execution"] .aios-osbar-greeting > strong{display: block;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.aios-mock[data-mode="execution"] .aios-osbar{padding: 10px 10px;}
.aios-mock[data-mode="execution"] .aios-osbar-left{gap: 12px;}
.aios-mock[data-mode="execution"] .aios-osbar .aios-osbar-brand{display: none;}
.aios-mock[data-mode="execution"] .aios-date-day-short{display: inline;}
.aios-mock[data-mode="execution"] .aios-hero-topbar{flex-wrap: wrap; justify-content: center;}
.aios-mock[data-mode="execution"] .aios-hero-topbar .aios-hero-tools{flex: 0 0 auto;}
.aios-mock[data-mode="execution"] #panel-context .aios-card-body{max-height: 45vh;}
.aios-mock[data-mode="execution"] #panel-context .aios-card-body{min-height: 45vh;}
.aios-mock[data-mode="dashboard"] .aios-weather-place, .aios-mock[data-mode="overview"]  .aios-weather-place{font-size: 16px;}
.aios-mock[data-mode="dashboard"] .aios-weather-temp, .aios-mock[data-mode="overview"]  .aios-weather-temp{font-size: 38px;}
.aios-mock[data-mode="dashboard"] .aios-weather-temp sup, .aios-mock[data-mode="overview"]  .aios-weather-temp sup{font-size: 17px;}
.aios-mock[data-mode="dashboard"] .aios-weather-cond, .aios-mock[data-mode="overview"]  .aios-weather-cond{font-size: 15px;}
.aios-mock[data-mode="dashboard"] .aios-weather-metric-k, .aios-mock[data-mode="overview"]  .aios-weather-metric-k{font-size: 11px;}
.aios-mock[data-mode="dashboard"] .aios-weather-metric-v, .aios-mock[data-mode="overview"]  .aios-weather-metric-v{font-size: 15px;}
.aios-mock[data-mode="dashboard"] .aios-weather-icon, .aios-mock[data-mode="overview"]  .aios-weather-icon{width: 52px; height: 52px;}
.aios-mock[data-mode="dashboard"] .aios-weather-day-name, .aios-mock[data-mode="overview"]  .aios-weather-day-name{font-size: 13px;}
.aios-mock[data-mode="dashboard"] .aios-weather-day-temps, .aios-mock[data-mode="overview"]  .aios-weather-day-temps{font-size: 14px;}
.aios-mock[data-mode="dashboard"] .aios-weather-day-icon, .aios-mock[data-mode="overview"]  .aios-weather-day-icon{width: 42px; height: 42px;}
.aios-mock[data-mode="dashboard"] .aios-weather-picker input[type="text"], .aios-mock[data-mode="overview"]  .aios-weather-picker input[type="text"]{width: 150px; font-size: 12px; padding: 8px 10px;}
.aios-mock[data-mode="dashboard"] .aios-weather-picker button, .aios-mock[data-mode="overview"]  .aios-weather-picker button{font-size: 10px !important; padding: 8px 11px;}
.aios-mock[data-mode="dashboard"] .aios-scenery-btn, .aios-mock[data-mode="overview"]  .aios-scenery-btn{width: 28px; height: 28px;}
.aios-mock[data-mode="dashboard"] .aios-scenery-btn svg, .aios-mock[data-mode="overview"]  .aios-scenery-btn svg{width: 18px; height: 18px;}
.aios-mock[data-mode="execution"] .aios-weather-head{flex-wrap: wrap;}
.aios-mock[data-mode="execution"] .aios-weather-picker{width: 100%; align-items: stretch;}
.aios-mock[data-mode="execution"] .aios-weather-picker-row{width: 100%;}
.aios-mock[data-mode="execution"] .aios-weather-picker input[type="text"]{flex: 1 1 auto; width: auto;}
.aios-mock[data-mode="execution"] .aios-weather-results{width: 100%;}
.aios-mock[data-mode="overview"] .aios-scrollable, .aios-mock[data-mode="execution"] .aios-scrollable{max-height: 60vh;}
.aios-mock[data-mode="execution"] .aios-quick-links-row{flex-wrap: wrap;}
.aios-mock[data-mode="execution"] .aios-quick-links-row .aios-ql-label{flex: 1 1 100%;}
.aios-mock[data-mode="execution"] .aios-notes-layout, .aios-mock[data-mode="overview"] .aios-notes-layout{overflow: visible;}
.aios-mock[data-mode="execution"] .aios-notes-layout{display: block;}
.aios-mock[data-mode="execution"] .aios-notes-resizer{display: none;}
.aios-mock[data-mode="execution"] .aios-notes-list{border-right: none;}
.aios-mock[data-mode="execution"] .aios-notes-list{max-height: 230px; min-height: 230px;}
.aios-mock[data-mode="execution"] .aios-notes-list ul:not(:empty){margin-bottom: 12px;}
.aios-mock[data-mode="overview"] .aios-notes-list{max-height: 60vh;}
.aios-mock[data-mode="execution"] .aios-notes-viewer, .aios-mock[data-mode="overview"] .aios-notes-viewer{height: auto; overflow: visible;}
.aios-mock[data-mode="execution"] .aios-note-content, .aios-mock[data-mode="overview"] .aios-note-content{flex: 0 1 auto; max-height: 60vh; min-height: 200px;}
.aios-mock[data-mode="execution"] .aios-note-content{min-height: calc(100% - 40px);
    max-height: calc(100% - 40px);
    
    font-size: calc(15px * var(--aios-text-scale, 1));}
.aios-mock[data-mode="execution"] #aios-feedback-btn{padding: 14px 14px; font-size: 11px;}
.aios-mock[data-mode="execution"] #aios-feedback-btn .aios-label-opt{display: none;}
.aios-mock[data-mode="execution"] .aios-osbar-menu-btn{display: inline-flex; align-items: center;}
.aios-mock[data-mode="execution"] .aios-osbar-actions{display: none;
    position: fixed; top: 62px; right: 8px; left: auto; z-index: 950;
    flex-direction: column; align-items: stretch; gap: 8px;
    min-width: 210px; padding: 12px;
    background: linear-gradient(145deg,#151515,#101010), var(--aios-bg);
    border: 1px solid var(--aios-border); border-radius: var(--aios-radius);
    box-shadow: var(--aios-shadow);}
.aios-mock[data-mode="execution"] .aios-osbar-actions.aios-osbar-open{display: flex;}
.aios-mock[data-mode="execution"] .aios-osbar-actions .aios-btn{width: 100%; justify-content: center;}
.aios-mock[data-mode="execution"] .aios-osbar-actions .aios-label-opt{display: inline;}
.aios-mock[data-mode="execution"] #aios-feedback-btn{padding: 14px 14px; font-size: 12px;}
.aios-mock[data-mode="execution"] .aios-handoff-panel{width: 100%; max-height: none; height: calc(100% - 24px);
    display: flex; flex-direction: column;}
.aios-mock[data-mode="execution"] .aios-handoff-panel .aios-card-body{flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column;}
.aios-mock[data-mode="execution"] .aios-handoff-text{flex: 1 1 auto; min-height: 0;}
.aios-mock[data-mode="execution"] .aios-handoff-panel .aios-card-body{overflow-y: auto;}
.aios-mock[data-mode="execution"] #aios-builder-fields{flex: 0 0 auto;}
.aios-mock[data-mode="execution"] .aios-handoff-panel .aios-card-body{display: flex; flex-direction: column;}
.aios-mock[data-mode="execution"] #aios-handoff-out{flex: 0 0 auto; min-height: 0;}
.aios-mock[data-mode="execution"] #aios-handoff-pane-build[hidden] ~ #aios-handoff-out{flex: 1 1 auto; display: flex; flex-direction: column;}
.aios-mock[data-mode="execution"] #aios-handoff-pane-build[hidden] ~ #aios-handoff-out .aios-handoff-text{flex: 1 1 auto; min-height: 0;}
.aios-mock[data-mode="execution"] #aios-handoff-pane-build:not([hidden]) ~ #aios-handoff-out .aios-handoff-text{flex: 0 0 auto; min-height: 190px;}
.aios-mock.aios-notebook-maxed{overflow: hidden;}
.aios-mock[data-mode="execution"] .aios-notebook-max .aios-note-content, .aios-mock[data-mode="overview"] .aios-notebook-max .aios-note-content{flex: 1 1 auto; min-height: 0; max-height: none;}
.aios-mock.aios-notebook-maxed #aios-max-prompt{display: flex; flex-direction: column; gap: 6px;
    position: fixed; right: 24px; bottom: 24px; z-index: 950;
    width: min(460px, calc(100vw - 48px));
    padding: 10px 12px; border-radius: 18px;
    background: rgba(0,0,0,0.88); border: 1px solid var(--aios-border);
    box-shadow: var(--aios-shadow);}
.aios-mock.aios-notebook-maxed.aios-max-prompt-min #aios-max-prompt{display: none;}
.aios-mock.aios-notebook-maxed.aios-max-prompt-min #aios-max-prompt-open{display: inline-flex; align-items: center; justify-content: center;
    position: fixed; right: 24px; bottom: 24px; z-index: 950;
    
    width: 56px; height: 56px; padding: 0; border-radius: 50%;
    font-size: 12px; letter-spacing: 0.5px;
    box-shadow: var(--aios-shadow);}
.aios-mock[data-mode="execution"] #aios-notebook-expand{display: none;}
.aios-mock[data-mode="execution"] .aios-mobile-nav{display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 800;
    background: rgba(5,5,5,0.96); border-top: 1px solid var(--aios-border);
    padding: 6px 6px calc(env(safe-area-inset-bottom, 0px) + 6px); gap: 4px;}
.aios-mock[data-mode="execution"] .aios-app{padding-bottom: var(--aios-nav-h);}
.aios-mock[data-mode="execution"][data-mobile-page]:not([data-mobile-page="brief"]) #panel-daily-brief{display: none;}
.aios-mock[data-mode="execution"][data-mobile-page]:not([data-mobile-page="plan"]) #panel-plan, .aios-mock[data-mode="execution"][data-mobile-page]:not([data-mobile-page="plan"]) #panel-next-action{display: none;}
.aios-mock[data-mode="execution"][data-mobile-page]:not([data-mobile-page="brief"]) #panel-weather, .aios-mock[data-mode="execution"][data-mobile-page]:not([data-mobile-page="notebook"]) #panel-notebook, .aios-mock[data-mode="execution"][data-mobile-page]:not([data-mobile-page="notebook"]) .aios-hero{display: none;}
.aios-mock[data-mode="execution"][data-mobile-page="calendar"] #panel-calendar{display: block;}
.aios-mock[data-mode="execution"][data-mobile-page]:not([data-mobile-page="more"]) #panel-quick-actions, .aios-mock[data-mode="execution"][data-mobile-page]:not([data-mobile-page="more"]) #panel-context, .aios-mock[data-mode="execution"][data-mobile-page]:not([data-mobile-page="more"]) #panel-vision, .aios-mock[data-mode="execution"][data-mobile-page]:not([data-mobile-page="more"]) #panel-roadmap, .aios-mock[data-mode="execution"][data-mobile-page]:not([data-mobile-page="more"]) #panel-system-status{display: none;}
.aios-mock[data-mode="execution"] .aios-notes-drawer-btn{display: inline-block;}
.aios-mock[data-mode="execution"] .aios-notes-list{display: none;}
.aios-mock[data-mode="execution"].aios-notes-drawer-open .aios-notes-list{display: block; position: fixed; inset: 0; z-index: 880;
    background: #05080a; border: none; border-radius: 0;
    padding: 56px 12px 12px; overflow: auto; max-width: none;
    
    height: auto; max-height: none; min-height: 0; flex: none;}
.aios-mock[data-mode="execution"] #aios-open-calendar{display: none;}
.aios-mock.aios-cal-open #panel-calendar .aios-card-header{display: flex; align-items: center;}
.aios-mock.aios-cal-open #aios-cal-close{margin-left: auto;}
.aios-mock.aios-cal-open #panel-calendar{display: flex; flex-direction: column;
    position: fixed; inset: 60px 12px 12px; z-index: 900;
    margin: 0; max-height: none; overflow: hidden;
    background: #0b0f14;}
.aios-mock.aios-cal-open #panel-calendar .aios-card-body{flex: 1 1 auto; min-height: 0;}
.aios-mock.aios-cal-open .aios-cal-close{display: inline-block;}
.aios-mock[data-mode="execution"]{--aios-osbar-h: 66px;
    --aios-nav-h: 62px;
    --aios-mobile-chrome: calc(var(--aios-osbar-h) + var(--aios-nav-h));}
.aios-mock[data-mode="execution"] .aios-osbar{position: fixed; top: 0; left: 0; right: 0; z-index: 820;
    height: var(--aios-osbar-h);}
.aios-mock[data-mode="overview"] .aios-osbar{position: sticky; top: 0; z-index: 820;}
.aios-mock[data-mode="execution"] .aios-app{padding-top: var(--aios-osbar-h);}
.aios-mock[data-mode="execution"][data-mobile-page="brief"] #panel-daily-brief, .aios-mock[data-mode="execution"][data-mobile-page="plan"] #panel-plan, .aios-mock[data-mode="execution"][data-mobile-page="calendar"] #panel-calendar{display: flex; flex-direction: column;
    height: calc(100% - var(--aios-mobile-chrome));
    max-height: none; margin-bottom: 0;}
.aios-mock[data-mode="execution"][data-mobile-page="brief"] #panel-daily-brief > .aios-card-body, .aios-mock[data-mode="execution"][data-mobile-page="plan"] #panel-plan > .aios-card-body, .aios-mock[data-mode="execution"][data-mobile-page="calendar"] #panel-calendar > .aios-card-body{flex: 1 1 auto; min-height: 0; max-height: none; overflow-y: auto;}
.aios-mock[data-mode="execution"][data-mobile-page="plan"] .aios-grid{display: flex; flex-direction: column; gap: 0;
    height: calc(100% - var(--aios-mobile-chrome));
    overflow: hidden;}
.aios-mock[data-mode="execution"][data-mobile-page="plan"] .aios-col-main, .aios-mock[data-mode="execution"][data-mobile-page="plan"] aside.aios-col-side:first-of-type{flex: 0 0 auto; height: auto;}
.aios-mock[data-mode="execution"][data-mobile-page="plan"] aside.aios-col-side:last-of-type{flex: 1 1 auto; min-height: 0; height: auto;}
.aios-mock[data-mode="execution"][data-mobile-page="plan"] #panel-next-action{flex: 0 0 auto; margin-bottom: 0;}
.aios-mock[data-mode="execution"][data-mobile-page="plan"] #panel-plan{flex: 1 1 auto; min-height: 0; height: auto; max-height: none;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #panel-notebook{display: flex; flex-direction: column;
    height: auto; max-height: none; margin: 0 0 12px 0;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #panel-notebook .aios-notes-layout{display: flex; flex-direction: column;
    flex: 1 1 auto; min-height: 0; height: auto;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #panel-notebook .aios-notes-viewer{display: flex; flex-direction: column;
    flex: 1 1 auto; min-height: 0; height: auto;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #panel-notebook .aios-note-content, .aios-mock[data-mode="execution"][data-mobile-page="notebook"] #panel-notebook .aios-note-preview, .aios-mock[data-mode="execution"][data-mobile-page="notebook"] #panel-notebook .aios-note-aiview{flex: 1 1 auto;
    height: auto;
    min-height: 0;
    max-height: none;
    
    scroll-margin-top: var(--aios-osbar-h);
    scroll-margin-bottom: var(--aios-nav-h);}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #panel-weather{margin-bottom: 12px;}
.aios-mock[data-mode="execution"] #panel-weather.aios-weather-collapsed{min-height: 0 !important;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-context-drawer-btn{display: inline-block;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #panel-context{display: none;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-context-drawer-open #panel-context{display: flex; flex-direction: column;
    position: fixed; inset: 0; z-index: 880;
    margin: 0; max-height: none;
    background: #05080a; border: none; border-radius: 0;
    overflow: hidden; padding-top: 44px;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-context-drawer-open #panel-context > .aios-card-body{flex: 1 1 auto; min-height: 0; max-height: none; overflow-y: auto;}
.aios-mock:not([data-mode="execution"]) .aios-cal-day{height: 118px; align-items: stretch; justify-content: flex-start;
    padding: 6px 7px; text-align: left; gap: 3px; overflow: hidden;}
.aios-mock:not([data-mode="execution"]) .aios-cal-cell-events{display: flex; flex-direction: column; gap: 2px; width: 100%; min-width: 0;
    flex: 1 1 auto; min-height: 0; overflow-y: auto;}
.aios-mock:not([data-mode="execution"]) .aios-cal-cell-event{font-size: 13px; line-height: 1.3; color: var(--aios-text);
    background: rgba(46,230,214,0.10); border-left: 2px solid var(--aios-accent);
    border-radius: 3px; padding: 1px 4px;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    
    flex: 0 0 auto;}
.aios-mock:not([data-mode="execution"]) .aios-cal-cell-more{font-size: 10px; color: var(--aios-text-muted);}
.aios-mock:not([data-mode="execution"]) .aios-cal-dot{display: none;}
.aios-mock:not([data-mode="execution"]) #aios-cal-label{font-size: 17px; min-width: 150px;}
.aios-mock:not([data-mode="execution"]) .aios-cal-day{font-size: 16px; height: 132px;}
.aios-mock:not([data-mode="execution"]) .aios-cal-cell-event{font-size: 14px;}
.aios-mock:not([data-mode="execution"]) .aios-cal-cell-more{font-size: 12px;}
.aios-mock:not([data-mode="execution"]) .aios-cal-daylist-head{font-size: 16px;}
.aios-mock:not([data-mode="execution"]) .aios-cal-event{font-size: 15px; padding: 5px 0;}
.aios-mock:not([data-mode="execution"]) .aios-cal-event-note{font-size: 13px;}
.aios-mock:not([data-mode="execution"]) .aios-cal-empty{font-size: 15px;}
.aios-mock:not([data-mode="execution"]) .aios-cal-msg{font-size: 14px;}
.aios-mock:not([data-mode="execution"]) .aios-cal-input{font-size: 15px; padding: 6px 8px;}
.aios-mock:not([data-mode="execution"]) .aios-cal-dow{font-size: 14px; letter-spacing: 0.5px; font-weight: bold; padding: 6px 0 8px;}
.aios-mock:not([data-mode="execution"]) .aios-cal-dow-long{display: inline;}
.aios-mock:not([data-mode="execution"]) .aios-cal-dow-short{display: none;}
.aios-mock:not([data-mode="execution"]) .aios-cal-daylist{max-height: 30vh;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #panel-notebook .aios-card-header{row-gap: 4px;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-notebook-tabs .aios-nb-tab, .aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-notebook-tabs .aios-pinned-tabs, .aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-context-select-all, .aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-context-clear-all, .aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-set-cover, .aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-cover-today, .aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-delete-note{display: none;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-notes-drawer-open #aios-notebook-tabs{display: flex; position: fixed; top: 44px; left: 0; right: 0; z-index: 890;
    background: #05080a; border-bottom: 1px solid var(--aios-border);
    padding: 8px 12px 10px; margin: 0; gap: 6px;
    
    flex-wrap: wrap;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-notes-drawer-open #aios-notebook-tabs .aios-nb-tab{display: inline-block; flex: 0 0 auto;   
    white-space: nowrap;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-notes-drawer-open #aios-notebook-tabs .aios-pinned-tabs{display: flex; flex: 0 0 auto; gap: 6px;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-notes-drawer-open .aios-project-select{flex: 0 0 auto; width: auto;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-notes-drawer-open .aios-notes-list{padding-top: calc(44px + var(--aios-nb-tabs-h, 88px));}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-notebook-tabs{flex-wrap: wrap; gap: 6px;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] .aios-project-select{display: flex; flex-wrap: nowrap; gap: 6px; width: 100%;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] .aios-project-select select{flex: 1 1 auto; min-width: 0;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-context-drawer-open #aios-context-select-all, .aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-context-drawer-open #aios-context-clear-all{display: inline-flex; align-items: center;
    position: fixed; top: 8px; z-index: 890;
    font-size: 10px; padding: 4px 8px;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-context-drawer-open #aios-context-select-all{top: 46px; left: 8px;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-context-drawer-open #aios-context-clear-all{top: 46px; left: 108px;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-context-drawer-open #panel-context{padding-top: 78px;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] .aios-notes-actions{gap: 6px; flex-wrap: wrap;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] .aios-notes-actions .aios-icon-btn{padding: 8px 10px; font-size: 11px;}
.aios-mock[data-mode="execution"].aios-notes-drawer-open #aios-notes-drawer-close, .aios-mock[data-mode="execution"].aios-context-drawer-open #aios-context-drawer-close{display: flex; align-items: center; justify-content: center;
    position: fixed; top: 8px; right: 10px; z-index: 890;
    min-width: 46px; min-height: 46px;      
    border: 1px solid var(--aios-border); border-radius: 10px;
    background: rgba(0,0,0,0.85); color: var(--aios-accent);
    font-size: 16px; line-height: 1; cursor: pointer;}
.aios-mock[data-mode="execution"].aios-notes-drawer-open #aios-notes-drawer-title, .aios-mock[data-mode="execution"].aios-context-drawer-open #aios-context-drawer-title{display: block; position: fixed; top: 20px; left: 14px; z-index: 890;
    color: var(--aios-accent); font-family: 'Consolas', monospace;
    font-size: 13px; letter-spacing: 1px;}
.aios-mock[data-mode="execution"] .aios-offline-bar{bottom: var(--aios-nav-h);}
.aios-mock[data-mode="execution"] .aios-websearch-engine{flex-wrap: wrap;}
.aios-mock[data-mode="execution"] .aios-collapse-header{cursor: default;}
.aios-mock[data-mode="execution"] .aios-collapse-arrow{display: none;}
.aios-mock[data-mode="execution"] .aios-card.aios-collapsed > .aios-card-body{display: block;}
.aios-mock[data-mode="execution"] .aios-card.aios-fill-card.aios-collapsed{flex: 1 1 auto;}
.aios-mock[data-mode="execution"] .aios-card.aios-collapsed .aios-card-header{margin-bottom: 10px;}
.aios-mock[data-mode="overview"] #panel-calendar > .aios-card-body{display: flex; flex-direction: column; overflow: hidden; min-height: 0;}
.aios-mock[data-mode="overview"] .aios-cal-grid{flex: 0 0 auto;}
.aios-mock[data-mode="overview"] .aios-cal-day{height: 46px; align-items: center; justify-content: center;
    padding: 2px; text-align: center; gap: 2px; font-size: 13px;}
.aios-mock[data-mode="overview"] .aios-cal-cell-events{display: none;}
.aios-mock[data-mode="overview"] .aios-cal-dot{display: block;}
.aios-mock[data-mode="overview"] .aios-cal-daylist{flex: 1 1 auto; min-height: 0; overflow-y: auto; margin-top: 8px;}
.aios-mock.aios-cal-open[data-mode="dashboard"] #panel-calendar > .aios-card-body{display: flex; flex-direction: column; overflow: hidden; min-height: 0;}
.aios-mock.aios-cal-open[data-mode="dashboard"] .aios-cal-grid{flex: 1 1 auto; min-height: 0;
    
    max-height: calc(6 * 132px + 33px + 6 * 6px);
    grid-template-rows: auto repeat(6, minmax(0, 1fr));}
.aios-mock.aios-cal-open[data-mode="dashboard"] .aios-cal-day{height: auto; min-height: 0; max-height: 132px;}
.aios-mock.aios-cal-open[data-mode="dashboard"] .aios-cal-daylist{flex: 1 0 220px; min-height: 0; overflow-y: auto;}
.aios-mock.aios-brief-maxed .aios-col-side > #panel-quick-actions, .aios-mock.aios-brief-maxed .aios-col-side > #panel-context{display: none;}
.aios-mock.aios-brief-maxed #panel-daily-brief{flex: 1 1 auto;}
.aios-mock[data-mode="execution"] #aios-brief-expand{display: none;}
.aios-mock:not([data-mode="execution"]) .aios-collapse-header-actions .aios-icon-btn{padding: 6px 7px;}
.aios-mock[data-mode="execution"][data-mobile-page="brief"] .aios-grid{display: flex; flex-direction: column; gap: 8px;
    height: calc(100% - var(--aios-mobile-chrome));
    overflow: hidden;}
.aios-mock[data-mode="execution"][data-mobile-page="brief"] .aios-col-main{order: -1; flex: 0 0 auto; height: auto;}
.aios-mock[data-mode="execution"][data-mobile-page="brief"] aside.aios-col-side:first-of-type{flex: 1 1 auto; min-height: 0; height: auto;}
.aios-mock[data-mode="execution"][data-mobile-page="brief"] aside.aios-col-side:last-of-type{flex: 0 0 auto; height: auto;}
.aios-mock[data-mode="execution"][data-mobile-page="brief"] #panel-weather{flex: 0 0 auto; margin-bottom: 0;}
.aios-mock[data-mode="execution"][data-mobile-page="brief"] #panel-daily-brief{flex: 1 1 auto; min-height: 0; height: auto; max-height: none; margin-bottom: 0;}
.aios-mock[data-mode="execution"][data-mobile-page="brief"] #panel-daily-brief > .aios-card-body{flex: 1 1 auto; min-height: 0; max-height: none; overflow-y: auto;}
.aios-mock[data-mode="execution"][data-mobile-page]:not([data-mobile-page="more"]){overflow: hidden;}
.aios-mock[data-mode="execution"] .aios-card-body, .aios-mock[data-mode="execution"] .aios-scrollable, .aios-mock[data-mode="execution"] .aios-note-content, .aios-mock[data-mode="execution"] .aios-note-preview{overscroll-behavior: contain;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] .aios-grid{display: flex; flex-direction: column; gap: 6px;
    height: calc(100% - var(--aios-mobile-chrome));
    overflow: hidden;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] .aios-col-main{flex: 1 1 auto; min-height: 0; height: auto;
    display: flex; flex-direction: column; gap: 6px;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] aside.aios-col-side{flex: 0 0 auto; height: auto;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #panel-notebook{flex: 1 1 auto; min-height: 0; height: auto; max-height: none;
    margin-bottom: 0; padding: 8px;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] .aios-notebook-layout{flex: 1 1 auto; min-height: 0; height: auto;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-notebook-layout, .aios-mock[data-mode="execution"][data-mobile-page="notebook"] .aios-note-viewer{display: flex; flex-direction: column; min-height: 0; height: auto; flex: 1 1 auto;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-note-content{flex: 1 1 auto; min-height: 0; height: auto; max-height: none;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] .aios-hero{flex: 0 0 auto; padding: 8px 12px; margin-bottom: 0;}
.aios-mock[data-mode="execution"] .aios-hero-topbar{margin-bottom: 5px;}
.aios-mock[data-mode="execution"] .aios-notebook-header{margin-bottom: 6px;}
.aios-mock[data-mode="execution"] .aios-hero-actions-centre{gap: 6px; flex-wrap: nowrap;}
.aios-mock[data-mode="execution"] .aios-hero-actions-centre > *{padding: 7px 9px; font-size: 11px; min-width: 0; white-space: nowrap;}
.aios-mock[data-mode="execution"] .aios-greeting-input-row{margin-bottom: 6px;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] .aios-grid, .aios-mock[data-mode="execution"][data-mobile-page="notebook"] .aios-col-main{gap: 0;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] .aios-hero{margin-top: 0;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #panel-notebook{padding: 6px;}
.aios-mock[data-mode="execution"] .aios-note-content, .aios-mock[data-mode="execution"] .aios-note-preview, .aios-mock[data-mode="execution"] .aios-note-aiview{padding: 10px 12px;}
.aios-mock[data-mode="execution"] .aios-note-toolbar{margin: 4px 0;}
.aios-mock[data-mode="execution"] .aios-notebook-header{margin-bottom: 4px; gap: 4px 6px;}
.aios-mock[data-mode="execution"] .aios-hero-identity{gap: 8px;}
.aios-mock[data-mode="execution"] .aios-hero-identity .aios-title{font-size: 13px; line-height: 1.2;}
.aios-mock[data-mode="execution"] .aios-thinking-box{font-size: 11px;}
.aios-mock[data-mode="execution"] .aios-hero-topbar{margin-bottom: 3px;}
.aios-mock[data-mode="execution"] .aios-hero-actions{gap: 5px;}
.aios-mock[data-mode="execution"] .aios-greeting-input-row{gap: 8px; margin-bottom: 4px;}
.aios-mock[data-mode="execution"] .aios-greeting-input-row input{padding: 11px 14px; font-size: 16px;}
.aios-mock[data-mode="execution"] #aios-intent-submit{padding: 11px 14px; font-size: 12px;}
.aios-mock[data-mode="execution"] .aios-hero-identity .aios-osbar-brand{font-size: 14px;}
.aios-mock[data-mode="execution"] .aios-hero-identity .aios-title{white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.aios-mock[data-mode="execution"]{--aios-m-input: 16px;   
    --aios-m-head: 14px;    
    --aios-m-body: 12px;    
    --aios-m-small: 10px;}
.aios-mock[data-mode="execution"] .aios-card-header h3, .aios-mock[data-mode="execution"] #aios-notebook-hint, .aios-mock[data-mode="execution"] .aios-cal-daylist-head{font-size: var(--aios-m-head); letter-spacing: 0.5px;}
.aios-mock[data-mode="execution"] .aios-brief-content, .aios-mock[data-mode="execution"] .aios-list li, .aios-mock[data-mode="execution"] .aios-context-panel-list li, .aios-mock[data-mode="execution"] .aios-plan-item-text, .aios-mock[data-mode="execution"] .aios-plan-item-text strong, .aios-mock[data-mode="execution"] #aios-next-action-text, .aios-mock[data-mode="execution"] .aios-cal-event, .aios-mock[data-mode="execution"] .aios-note-title, .aios-mock[data-mode="execution"] .aios-hero-identity .aios-title, .aios-mock[data-mode="execution"] .aios-hero-identity .aios-osbar-brand, .aios-mock[data-mode="execution"] #panel-vision p, .aios-mock[data-mode="execution"] #panel-system-status span, .aios-mock[data-mode="execution"] #panel-system-status strong, .aios-mock[data-mode="execution"] #panel-roadmap p, .aios-mock[data-mode="execution"] .aios-btn-quiet{font-size: var(--aios-m-body); line-height: 1.45;}
.aios-mock[data-mode="execution"] .aios-nb-tab, .aios-mock[data-mode="execution"] .aios-note-toolbar, .aios-mock[data-mode="execution"] .aios-notes-actions .aios-icon-btn, .aios-mock[data-mode="execution"] .aios-note-viewer-title, .aios-mock[data-mode="execution"] .aios-note-statusbar, .aios-mock[data-mode="execution"] .aios-brief-edit-btn, .aios-mock[data-mode="execution"] .aios-cal-event-note, .aios-mock[data-mode="execution"] .aios-hero-tools .aios-btn{font-size: var(--aios-m-small);}
.aios-mock[data-mode="execution"] .aios-greeting-input-row input, .aios-mock[data-mode="execution"] input[type="text"], .aios-mock[data-mode="execution"] input[type="email"], .aios-mock[data-mode="execution"] input[type="password"], .aios-mock[data-mode="execution"] input[type="time"], .aios-mock[data-mode="execution"] input[type="date"], .aios-mock[data-mode="execution"] textarea, .aios-mock[data-mode="execution"] select{font-size: var(--aios-m-input);}
.aios-mock[data-mode="execution"] .aios-weather-temp{font-size: 24px;}
.aios-mock[data-mode="execution"] .aios-weather-temp sup{font-size: 12px;}
.aios-mock[data-mode="execution"] .aios-weather-place{font-size: var(--aios-m-body);}
.aios-mock[data-mode="execution"] .aios-card{padding: 10px;}
.aios-mock[data-mode="execution"] .aios-card-header{margin-bottom: 6px;}
.aios-mock[data-mode="execution"] .aios-list li{margin-bottom: 5px;}
.aios-mock[data-mode="execution"] .aios-nb-tab, .aios-mock[data-mode="execution"] .aios-notes-actions .aios-icon-btn{padding: 4px 7px;}
.aios-mock[data-mode="execution"] .aios-note-toolbar{gap: 4px; margin: 3px 0;}
.aios-mock[data-mode="execution"] .aios-cal-event{padding: 3px 0;}
.aios-mock[data-mode="execution"] .aios-create-note{font-size: var(--aios-m-head);}
.aios-mock[data-mode="execution"] #aios-quick-links-body .aios-btn, .aios-mock[data-mode="execution"] #aios-links-grid .aios-btn{font-size: var(--aios-m-body); padding: 7px 9px;}
.aios-mock[data-mode="execution"] .aios-cal-daynum{font-size: var(--aios-m-body);}
.aios-mock[data-mode="execution"] .aios-cal-dot{font-size: var(--aios-m-small);}
.aios-mock[data-mode="execution"] .aios-create-note{font-size: var(--aios-m-head); padding: 4px 8px;}
.aios-mock[data-mode="execution"] .aios-app{font-size: var(--aios-m-body);}
.aios-mock[data-mode="execution"] .aios-btn-quiet{font-size: var(--aios-m-body); padding: 7px 9px;}
.aios-mock[data-mode="execution"] .aios-card-body{font-size: var(--aios-m-body);}
.aios-mock[data-mode="execution"] .aios-quick-actions-grid a, .aios-mock[data-mode="execution"] .aios-quick-actions-grid button{font-size: var(--aios-m-body) !important; padding: 7px 9px;}
.aios-mock[data-mode="execution"] .aios-panel-copy{font-size: var(--aios-m-body);}
.aios-mock[data-mode="execution"] .aios-note-content, .aios-mock[data-mode="execution"] .aios-note-preview, .aios-mock[data-mode="execution"] .aios-note-aiview{font-size: calc(12px * var(--aios-text-scale, 1));}
.aios-mock[data-mode="execution"] #aios-project-select{font-size: 10px; padding: 2px 4px; height: 22px; max-width: 118px;}
.aios-mock[data-mode="execution"] .aios-nb-tab{font-size: 9px; padding: 3px 6px; letter-spacing: 0.3px;}
.aios-mock[data-mode="execution"] .aios-notebook-tabs{gap: 4px;}
.aios-mock[data-mode="execution"] .aios-brief-content{margin: 0;}
.aios-mock[data-mode="execution"] .aios-brief-content .aios-brief-heading:first-child{margin-top: 0;}
.aios-mock[data-mode="execution"][data-mobile-page="brief"] .aios-grid{gap: 0;}
.aios-mock[data-mode="execution"][data-mobile-page="brief"] #panel-weather, .aios-mock[data-mode="execution"][data-mobile-page="brief"] #panel-daily-brief{margin-bottom: 0;}
.aios-mock[data-mode="execution"] .aios-app{padding-left: 0; padding-right: 0;}
.aios-mock[data-mode="execution"] .aios-card{padding: 8px;}
.aios-mock[data-mode="execution"] .aios-nb-tab-home{display: inline-block; color: var(--aios-accent); font-weight: bold;}
.aios-mock[data-mode="execution"] .aios-nb-caret{display: inline-block; margin-left: 4px; font-size: 9px;
    color: var(--aios-accent); transition: transform 0.15s;}
.aios-mock[data-mode="execution"] .aios-nb-picker-open .aios-nb-caret{transform: rotate(180deg);}
.aios-mock[data-mode="execution"] #aios-notebook-hint{cursor: pointer;}
.aios-mock[data-mode="execution"][data-mobile-page] #aios-notes-drawer-btn, .aios-mock[data-mode="execution"][data-mobile-page] #aios-context-drawer-btn{display: none;}
.aios-mock[data-mode="execution"] .aios-create-note{font-size: var(--aios-m-head); padding: 4px 9px;}
.aios-mock[data-mode="execution"] #aios-notebook-expand{display: inline-flex; align-items: center;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-delete-note{display: inline-block;}
.aios-mock[data-mode="execution"] .aios-notebook-max{position: fixed; inset: 0; z-index: 900; margin: 0; border-radius: 0;
    display: flex; flex-direction: column; padding: 6px;}
.aios-mock[data-mode="execution"] .aios-notebook-max .aios-notes-layout, .aios-mock[data-mode="execution"] .aios-notebook-max .aios-notes-viewer{flex: 1 1 auto; min-height: 0; height: auto;}
.aios-mock[data-mode="execution"] .aios-notebook-max .aios-note-content, .aios-mock[data-mode="execution"] .aios-notebook-max .aios-note-preview, .aios-mock[data-mode="execution"] .aios-notebook-max .aios-note-aiview{flex: 1 1 auto; min-height: 0; height: auto; max-height: none;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"] #aios-project-select{display: none;}
.aios-mock[data-mode="execution"][data-mobile-page="notebook"].aios-notes-drawer-open #aios-project-select{display: inline-block;}
.aios-mock[data-mode="execution"] .aios-plan-add-form input{font-size: var(--aios-m-input);}
.aios-mock[data-mode="execution"] .aios-plan-add-form select{font-size: var(--aios-m-body);}
.aios-mock[data-mode="execution"] .aios-notebook-header{flex-wrap: nowrap; gap: 6px;}
.aios-mock[data-mode="execution"] .aios-notebook-header > h3{flex: 0 0 auto;}
.aios-mock[data-mode="execution"][data-mobile-page] .aios-notes-actions{min-width: 0; flex: 1 1 auto; flex-wrap: nowrap; gap: 4px;
    justify-content: flex-end;}
.aios-mock[data-mode="execution"][data-mobile-page] .aios-notes-actions .aios-icon-btn{padding: 4px 5px; flex: 0 0 auto;}
