@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
#swap-os-app{--so-bg:#080d19;--so-sidebar:#0b1120;--so-panel:#101828;--so-border:#202b3e;--so-text:#f1f5fd;--so-muted:#8490a6;--so-blue:#5795ff;--so-green:#42d6a0;--so-violet:#a28aff;--so-amber:#f7bd62;position:relative;display:flex;min-height:calc(100vh - 35px);margin:0;background:var(--so-bg);color:var(--so-text);font:14px/1.45 'DM Sans',sans-serif;border-radius:12px;overflow:hidden;isolation:isolate}#swap-os-app *{box-sizing:border-box}#swap-os-app button,#swap-os-app input,#swap-os-app select{font:inherit}#swap-os-app button{cursor:pointer}#swap-os-app a{color:inherit;text-decoration:none}#swap-os-app h1,#swap-os-app h2,#swap-os-app p{margin-top:0}#swap-os-app .swap-os-sidebar{position:relative;flex:0 0 235px;width:235px;padding:22px 13px 13px;background:var(--so-sidebar);border-right:1px solid var(--so-border);display:flex;flex-direction:column;min-height:760px}#swap-os-app .swap-os-brand{display:flex;align-items:center;gap:10px;padding:0 7px 25px}#swap-os-app .swap-os-brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:linear-gradient(145deg,#68a6ff,#3b6bf0);font:800 23px Manrope,sans-serif;color:#fff;box-shadow:0 5px 18px #3678f633;flex:0 0 36px}#swap-os-app .swap-os-brand-copy{display:flex;flex-direction:column;gap:2px}#swap-os-app .swap-os-brand-copy b{font:800 16px Manrope,sans-serif;letter-spacing:.5px}#swap-os-app .swap-os-brand-copy small{font-size:8px;color:var(--so-muted);letter-spacing:1px}#swap-os-app .swap-os-workspace{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid var(--so-border);border-radius:10px;margin-bottom:24px}#swap-os-app .swap-os-workspace-dot{width:8px;height:8px;background:var(--so-blue);border-radius:3px}#swap-os-app .swap-os-workspace>span:nth-child(2),#swap-os-app .swap-os-profile>span{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}#swap-os-app .swap-os-workspace b,#swap-os-app .swap-os-profile b{font-size:11px}#swap-os-app .swap-os-workspace small,#swap-os-app .swap-os-profile small{font-size:9px;color:var(--so-muted);overflow:hidden;text-overflow:ellipsis}#swap-os-app .swap-os-chevron{color:var(--so-muted)}#swap-os-app .swap-os-nav-label{font-size:9px;font-weight:700;letter-spacing:1.3px;color:#64718a;padding:0 10px 8px}#swap-os-app .swap-os-nav{display:grid;gap:4px;margin-bottom:21px}#swap-os-app .swap-os-nav-link{min-height:37px;display:flex;align-items:center;gap:10px;padding:0 10px;border-radius:8px;color:#9aa6bc;font-size:11px;transition:background .18s,color .18s}#swap-os-app .swap-os-nav-link>span{width:17px;text-align:center;font-size:15px;color:#8190aa}#swap-os-app .swap-os-nav-link:hover{background:#ffffff08;color:var(--so-text)}#swap-os-app .swap-os-nav-link.active{color:#8db7ff;background:#397cf51a;box-shadow:inset 2px 0 var(--so-blue)}#swap-os-app .swap-os-nav-link.active>span{color:var(--so-blue)}#swap-os-app kbd{margin-left:auto;font-size:9px;color:#68758d;border:1px solid #29364a;border-radius:4px;padding:2px 5px}#swap-os-app .swap-os-nav-count{margin-left:auto;background:#243b60;color:#8cb7ff;font-size:9px;font-style:normal;padding:2px 6px;border-radius:5px}#swap-os-app .swap-os-sidebar-spacer{flex:1;min-height:10px}#swap-os-app .swap-os-ai-promo{display:flex;align-items:center;gap:9px;text-align:left;border:1px solid #273959;background:linear-gradient(120deg,#172747,#101a2c);border-radius:10px;padding:10px;margin:8px 0 11px;color:var(--so-text)}#swap-os-app .swap-os-ai-spark{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;background:#3e70cb2b;color:#8bb4ff;font-size:17px}#swap-os-app .swap-os-ai-promo>span:nth-child(2){display:flex;flex-direction:column;gap:2px;flex:1}#swap-os-app .swap-os-ai-promo b{font-size:10px}#swap-os-app .swap-os-ai-promo small{font-size:9px;color:var(--so-muted)}#swap-os-app .swap-os-promo-arrow{color:#7896cb}#swap-os-app .swap-os-profile{border-top:1px solid var(--so-border);margin-top:8px;padding:14px 5px 0;display:flex;align-items:center;gap:9px}#swap-os-app .swap-os-avatar{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:linear-gradient(145deg,#f3c49e,#bb795f);color:#37241d;font-size:10px;font-weight:800;flex:0 0 31px}#swap-os-app .swap-os-logout{color:var(--so-muted);padding:5px}#swap-os-app .swap-os-main{min-width:0;flex:1;background:var(--so-bg)}#swap-os-app .swap-os-topbar{height:64px;padding:0 25px;border-bottom:1px solid var(--so-border);display:flex;align-items:center;justify-content:space-between;gap:10px;background:#080d19f2;position:sticky;top:0;z-index:5}#swap-os-app .swap-os-breadcrumbs{display:flex;align-items:center;gap:10px;color:var(--so-muted);font-size:11px}#swap-os-app .swap-os-crumb-sep{color:#3b475b}#swap-os-app .swap-os-breadcrumbs b{font-weight:600;color:#dce4f3}#swap-os-app .swap-os-top-actions{display:flex;align-items:center;gap:9px}#swap-os-app .swap-os-search{height:33px;width:210px;border:1px solid var(--so-border);background:#0d1422;border-radius:8px;display:flex;align-items:center;gap:7px;padding:0 8px;color:#77849b}#swap-os-app .swap-os-search>span{font-size:21px}#swap-os-app .swap-os-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--so-text);font-size:10px}#swap-os-app .swap-os-search input::placeholder{color:#77849b}#swap-os-app .swap-os-icon-btn{width:32px;height:32px;border:1px solid var(--so-border);background:#0e1523;border-radius:8px;color:#a8b5c9;font-size:15px;display:grid;place-items:center}#swap-os-app .swap-os-icon-btn:hover{border-color:#3d5274;color:var(--so-text)}#swap-os-app .swap-os-mobile-menu{display:none}#swap-os-app .swap-os-content{max-width:1450px;margin:0 auto;padding:27px 25px 16px}#swap-os-app .swap-os-welcome-row{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px}#swap-os-app .swap-os-eyebrow,#swap-os-app .swap-os-panel-kicker{font-size:8px;letter-spacing:1.4px;font-weight:700;color:#8190a8}#swap-os-app .swap-os-eyebrow{display:flex;align-items:center;gap:7px}#swap-os-app .swap-os-live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--so-green);box-shadow:0 0 9px #42d6a055}#swap-os-app h1{font:700 clamp(22px,2vw,29px) Manrope,sans-serif;letter-spacing:-1px;margin:9px 0 6px;color:var(--so-text)}#swap-os-app h1 span{color:#81b2ff}#swap-os-app h1 em{color:#eab86c;font-size:17px;font-style:normal}#swap-os-app .swap-os-subheading{margin:0;color:var(--so-muted);font-size:11px}#swap-os-app .swap-os-date-pill{display:flex;align-items:center;gap:8px;border:1px solid var(--so-border);background:#0e1523;padding:9px 11px;border-radius:9px;color:#c2cde0;font-size:10px;white-space:nowrap}#swap-os-app .swap-os-date-pill span:first-child{color:var(--so-blue);font-size:14px}#swap-os-app .swap-os-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}#swap-os-app .swap-os-stat-card,#swap-os-app .swap-os-panel{background:linear-gradient(145deg,var(--so-panel),#0d1421);border:1px solid var(--so-border);border-radius:11px;box-shadow:0 12px 35px #00000012;min-width:0}#swap-os-app .swap-os-stat-card{padding:15px 14px 12px}#swap-os-app .swap-os-stat-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}#swap-os-app .swap-os-stat-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;font-size:15px}#swap-os-app .blue{background:#397cf51d;color:#77a9ff}#swap-os-app .violet{background:#9a7bff1c;color:var(--so-violet)}#swap-os-app .green{background:#42d6a01b;color:var(--so-green)}#swap-os-app .amber{background:#f7bd621a;color:var(--so-amber)}#swap-os-app .swap-os-trend{font-size:8px;padding:4px 6px;border-radius:5px}#swap-os-app .positive{color:var(--so-green);background:#42d6a012}#swap-os-app .neutral{color:#9eabc1;background:#ffffff08}#swap-os-app .swap-os-stat-label{font-size:10px;color:var(--so-muted);margin-bottom:5px}#swap-os-app .swap-os-stat-value{font:700 23px Manrope,sans-serif;letter-spacing:-.6px;margin-bottom:11px}#swap-os-app .swap-os-stat-value small{font:500 11px 'DM Sans',sans-serif;color:var(--so-muted)}#swap-os-app .swap-os-progress{height:4px;background:#253147;border-radius:5px;overflow:hidden}#swap-os-app .swap-os-progress>span{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,#387af3,#73acff)}#swap-os-app .swap-os-progress.green-progress>span{background:linear-gradient(90deg,#26b88a,#65e0b1)}#swap-os-app .swap-os-progress.amber-progress>span{background:linear-gradient(90deg,#dc9d3c,#f9ce7c)}#swap-os-app .swap-os-progress.violet-progress>span{background:linear-gradient(90deg,#8060e9,#b4a0ff)}#swap-os-app .swap-os-stat-foot{font-size:8px;color:#77849a;margin-top:8px}#swap-os-app .swap-os-mini-bars{height:4px;display:flex;gap:3px}#swap-os-app .swap-os-mini-bars i{height:100%;border-radius:3px;background:#6e68ce;flex:1}#swap-os-app .swap-os-mini-bars i:nth-child(3n){opacity:.35}#swap-os-app .swap-os-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:14px}#swap-os-app .swap-os-panel{padding:18px}#swap-os-app .swap-os-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}#swap-os-app .swap-os-panel-kicker{font-size:8px;margin-bottom:4px}#swap-os-app h2{font:700 16px Manrope,sans-serif;letter-spacing:-.3px;margin:0;color:var(--so-text)}#swap-os-app .swap-os-small-count{font:500 9px 'DM Sans',sans-serif;color:var(--so-muted);background:#ffffff0a;padding:3px 6px;border-radius:5px;margin-left:4px}#swap-os-app .swap-os-text-btn{background:none;border:0;color:#82adff;font-size:9px;padding:4px 0;white-space:nowrap}#swap-os-app .swap-os-task-filters{display:flex;gap:5px;border-bottom:1px solid var(--so-border);padding-bottom:11px;margin-bottom:1px}#swap-os-app .swap-os-filter{border:1px solid transparent;background:transparent;border-radius:6px;color:var(--so-muted);font-size:9px;padding:6px 8px}#swap-os-app .swap-os-filter.active{color:#9ec2ff;background:#4c8cff19;border-color:#4c8cff24}#swap-os-app .swap-os-task-row{display:flex;align-items:center;gap:9px;padding:12px 1px;border-bottom:1px solid #ffffff0a;min-width:0}#swap-os-app .swap-os-task-row:last-child{border-bottom:0}#swap-os-app .swap-os-task-row input{position:absolute;opacity:0;width:1px;height:1px}#swap-os-app .swap-os-task-check{flex:0 0 16px;height:16px;border:1px solid #43516a;border-radius:5px;display:grid;place-items:center;color:#fff;font-size:10px;cursor:pointer}#swap-os-app .swap-os-task-row input:checked+.swap-os-task-check{background:#4c8cf5;border-color:#4c8cf5}#swap-os-app .swap-os-task-row input:checked+.swap-os-task-check:after{content:'✓'}#swap-os-app .swap-os-task-row input:checked~.swap-os-task-info b{text-decoration:line-through;color:#7b879c}#swap-os-app .swap-os-task-info{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}#swap-os-app .swap-os-task-info b{font-size:10px;font-weight:600;overflow-wrap:anywhere}#swap-os-app .swap-os-task-info small{font-size:8px;color:var(--so-muted)}#swap-os-app .swap-os-priority{font-size:8px;padding:3px 6px;border-radius:5px;white-space:nowrap}#swap-os-app .swap-os-priority.high{color:#ff9caa;background:#ff647a12}#swap-os-app .swap-os-priority.medium{color:#efc16f;background:#efb44912}#swap-os-app .swap-os-priority.low{color:#8fa0b9;background:#8797ae12}#swap-os-app .swap-os-add-task{margin-top:10px;width:100%;text-align:left;padding:9px 10px;border:1px dashed #34445e;background:transparent;border-radius:7px;color:#91a1bb;font-size:10px}#swap-os-app .swap-os-add-task:hover{border-color:#5795ff;color:#a8c6ff}#swap-os-app .swap-os-add-task span{font-size:15px;vertical-align:-1px;margin-right:5px}#swap-os-app .swap-os-storage-note{font-size:8px;color:#66758c;margin:9px 0 0}#swap-os-app .swap-os-schedule-date{display:flex;align-items:center;gap:9px;padding:10px;border-radius:9px;border:1px solid #26334a;background:#ffffff03;margin-bottom:15px}#swap-os-app .swap-os-calendar-day{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:#3678f61d;color:#8cb7ff;font:700 17px Manrope}#swap-os-app .swap-os-schedule-date>span:nth-child(2){display:flex;flex-direction:column;gap:2px;flex:1}#swap-os-app .swap-os-schedule-date b{font-size:10px}#swap-os-app .swap-os-schedule-date small{font-size:9px;color:var(--so-muted)}#swap-os-app .swap-os-today-label{font-size:8px;letter-spacing:1px;color:var(--so-green);background:#42d6a013;padding:5px;border-radius:4px}#swap-os-app .swap-os-timeline{display:grid;gap:12px;margin-bottom:15px}#swap-os-app .swap-os-timeline-item{display:grid;grid-template-columns:37px 9px 1fr;gap:7px;min-height:49px}#swap-os-app .swap-os-time{font-size:8px;color:#8b98ae;padding-top:5px}#swap-os-app .swap-os-timeline-line{position:relative;display:flex;justify-content:center}#swap-os-app .swap-os-timeline-line:after{content:'';position:absolute;top:12px;bottom:-13px;width:1px;background:#2a3548}#swap-os-app .swap-os-timeline-item:last-child .swap-os-timeline-line:after{display:none}#swap-os-app .swap-os-timeline-line i{width:7px;height:7px;border-radius:50%;margin-top:6px;z-index:1}#swap-os-app .blue-dot{background:var(--so-blue)}#swap-os-app .violet-dot{background:var(--so-violet)}#swap-os-app .green-dot{background:var(--so-green)}#swap-os-app .swap-os-event{display:flex;flex-direction:column;gap:4px;padding:8px 9px;border-radius:7px;border-left:2px solid}#swap-os-app .swap-os-event b{font-size:9px}#swap-os-app .swap-os-event small{font-size:8px;color:var(--so-muted)}#swap-os-app .blue-event{background:#5795ff0d;border-color:#5795ff}#swap-os-app .violet-event{background:#a28aff0c;border-color:#a28aff}#swap-os-app .green-event{background:#42d6a00c;border-color:#42d6a0}#swap-os-app .swap-os-outline-btn{width:100%;border:1px solid #2c3b53;background:transparent;border-radius:7px;padding:9px 11px;color:#b7c5da;font-size:9px;display:flex;align-items:center;justify-content:space-between}#swap-os-app .swap-os-outline-btn:hover{border-color:#5795ff;color:#a8c6ff}#swap-os-app .swap-os-demo-tag{font-size:8px;letter-spacing:1px;color:#8fa1bc;border:1px solid var(--so-border);padding:4px 6px;border-radius:4px}#swap-os-app .swap-os-project-list{display:grid}#swap-os-app .swap-os-project-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #ffffff0a}#swap-os-app .swap-os-project-row:last-child{border-bottom:0;padding-bottom:0}#swap-os-app .swap-os-project-symbol{width:31px;height:31px;flex:0 0 31px;border-radius:8px;display:grid;place-items:center;font:700 14px Manrope}#swap-os-app .p-blue{background:#5795ff20;color:#80afff}#swap-os-app .p-violet{background:#a28aff20;color:#b4a0ff}#swap-os-app .p-green{background:#42d6a01c;color:#61dfad}#swap-os-app .swap-os-project-detail{flex:1;min-width:0}#swap-os-app .swap-os-project-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}#swap-os-app .swap-os-project-title b{font-size:9px}#swap-os-app .swap-os-project-title span{font-size:8px;color:#9aa9c0}#swap-os-app .swap-os-project-detail small{display:block;font-size:8px;color:var(--so-muted);margin-top:6px}#swap-os-app .swap-os-project-status{font-size:7px;padding:4px 5px;border-radius:4px;white-space:nowrap;align-self:flex-start}#swap-os-app .status-active{color:#65dcb0;background:#42d6a012}#swap-os-app .status-planning{color:#b7a4ff;background:#a28aff14}#swap-os-app .swap-os-ai-panel{position:relative;overflow:hidden;background:radial-gradient(ellipse at 100% 0%,#4c66b322,transparent 52%),linear-gradient(145deg,#111b30,#0d1423)}#swap-os-app .swap-os-ai-head{display:flex;align-items:center;gap:9px;margin-bottom:15px}#swap-os-app .swap-os-ai-orb{display:grid;place-items:center;width:33px;height:33px;border-radius:11px;background:linear-gradient(145deg,#729eff,#705ce8);box-shadow:0 0 24px #657de82b;color:white;font-size:19px}#swap-os-app .swap-os-ai-badge{font-size:9px;letter-spacing:1px;font-weight:700;color:#a8c4ff}#swap-os-app .swap-os-ai-badge i{display:inline-block;width:5px;height:5px;background:var(--so-green);border-radius:50%;margin-left:5px}#swap-os-app .swap-os-ai-more{margin-left:auto;color:#7287b1}#swap-os-app .swap-os-ai-panel h2{font-size:18px;margin-bottom:8px}#swap-os-app .swap-os-ai-panel h2 span{color:#8db4ff}#swap-os-app .swap-os-ai-copy{font-size:9px;line-height:1.7;color:#99a7bd;margin-bottom:14px}#swap-os-app .swap-os-ai-insight{display:flex;gap:9px;padding:11px;border:1px solid #354361;background:#ffffff04;border-radius:8px;margin-bottom:12px}#swap-os-app .swap-os-insight-icon{color:#a5baff;font-size:15px}#swap-os-app .swap-os-ai-insight>span:last-child{display:flex;flex-direction:column;gap:5px}#swap-os-app .swap-os-ai-insight b{font-size:9px}#swap-os-app .swap-os-ai-insight small{font-size:8px;line-height:1.5;color:#9baac0}#swap-os-app .swap-os-ai-button,#swap-os-app .swap-os-primary-btn{width:100%;border:0;border-radius:7px;background:linear-gradient(100deg,#427ef4,#6967eb);color:white;padding:10px 11px;font-size:9px;font-weight:600;display:flex;justify-content:space-between;align-items:center}#swap-os-app .swap-os-ai-note{font-size:8px;color:#71809a;margin:10px 0 0;line-height:1.5}#swap-os-app .swap-os-footer{display:flex;justify-content:space-between;gap:10px;padding:19px 2px 4px;color:#69768d;font-size:8px}#swap-os-app .swap-os-footer>span:first-child{display:flex;align-items:center;gap:7px}#swap-os-app .swap-os-footer b{color:#3b4a62}#swap-os-app .swap-os-toast{position:absolute;z-index:50;bottom:20px;right:20px;max-width:min(340px,calc(100% - 32px));background:#18263b;border:1px solid #344967;border-radius:9px;padding:11px 14px;color:#eaf1ff;font-size:11px;box-shadow:0 15px 45px #0005;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}#swap-os-app .swap-os-toast.show{opacity:1;transform:translateY(0)}#swap-os-app .swap-os-modal-backdrop{position:absolute;z-index:60;inset:0;background:#020611c9;backdrop-filter:blur(5px);display:grid;place-items:center;padding:18px}#swap-os-app .swap-os-modal-backdrop[hidden]{display:none}#swap-os-app .swap-os-modal{position:relative;width:min(100%,410px);background:#111b2c;border:1px solid #2a3a53;border-radius:14px;padding:24px;box-shadow:0 25px 100px #0009}#swap-os-app .swap-os-modal h2{font-size:21px;margin:7px 0}#swap-os-app .swap-os-modal>p{color:var(--so-muted);font-size:11px;margin-bottom:18px}#swap-os-app .swap-os-modal-close{position:absolute;right:13px;top:10px;background:transparent;border:0;color:var(--so-muted);font-size:24px}#swap-os-app .swap-os-modal form{display:grid;gap:8px}#swap-os-app .swap-os-modal form label{font-size:10px;color:#aebbd0;margin-top:6px}#swap-os-app .swap-os-modal input,#swap-os-app .swap-os-modal select{width:100%;background:#0a1220;border:1px solid #2b3a50;border-radius:7px;padding:10px;color:var(--so-text);outline:0}#swap-os-app .swap-os-modal input:focus,#swap-os-app .swap-os-modal select:focus{border-color:#5795ff}#swap-os-app .swap-os-modal-actions{display:flex;gap:9px;margin-top:13px}#swap-os-app .swap-os-modal-actions>*{flex:1}#swap-os-app .swap-os-modal-actions .swap-os-outline-btn{justify-content:center}#swap-os-app .swap-os-loading{font-size:10px;color:var(--so-muted);padding:20px 5px;text-align:center}#swap-os-app .swap-os-empty{font-size:10px;color:var(--so-muted);padding:20px 5px;text-align:center}#swap-os-app .swap-os-error{font-size:10px;color:#ff9caa;padding:15px 5px;text-align:center}#swap-os-app .swap-os-login{min-height:60vh;display:grid;place-items:center;padding:25px;background:#080d19;color:#f1f5fd;border-radius:12px;font-family:'DM Sans',sans-serif}#swap-os-app .swap-os-login-card{max-width:430px;text-align:center;padding:35px;border:1px solid #202b3e;border-radius:15px;background:#101828}#swap-os-app .swap-os-login-card h2{font:700 23px Manrope,sans-serif;margin:18px 0 10px}#swap-os-app .swap-os-login-card p{color:#8490a6;font-size:12px}#swap-os-app .swap-os-login-button{display:flex;justify-content:space-between;gap:12px;margin-top:20px;padding:12px 14px;border-radius:8px;background:linear-gradient(100deg,#427ef4,#6967eb);color:white!important;font-size:12px}
#swap-os-app.swap-os-light{color-scheme:light;--so-bg:#f4f7fc;--so-sidebar:#fff;--so-panel:#fff;--so-border:#e2e8f1;--so-text:#182237;--so-muted:#77849a;--so-shadow:0 10px 35px #2234520a}#swap-os-app.swap-os-light .swap-os-topbar{background:#ffffffed}#swap-os-app.swap-os-light .swap-os-search,#swap-os-app.swap-os-light .swap-os-icon-btn,#swap-os-app.swap-os-light .swap-os-date-pill{background:#fff;color:#56657d}#swap-os-app.swap-os-light .swap-os-stat-card,#swap-os-app.swap-os-light .swap-os-panel{background:#fff}#swap-os-app.swap-os-light .swap-os-ai-panel{background:radial-gradient(ellipse at 100% 0%,#4c66b315,transparent 52%),linear-gradient(145deg,#fff,#f4f7ff)}#swap-os-app.swap-os-light .swap-os-ai-promo{background:linear-gradient(120deg,#eef3ff,#f7f8ff);border-color:#dfe7f8}#swap-os-app.swap-os-light .swap-os-workspace{background:#fff}#swap-os-app.swap-os-light .swap-os-nav-link{color:#64718a}#swap-os-app.swap-os-light .swap-os-nav-link.active{color:#2f6fe6;background:#397cf50d}#swap-os-app.swap-os-light .swap-os-breadcrumbs b,#swap-os-app.swap-os-light .swap-os-task-info b,#swap-os-app.swap-os-light .swap-os-project-title b,#swap-os-app.swap-os-light .swap-os-schedule-date b{color:#26344c}#swap-os-app.swap-os-light .swap-os-event{background:#f5f8ff}#swap-os-app.swap-os-light .swap-os-schedule-date{background:#fafcff;border-color:var(--so-border)}#swap-os-app.swap-os-light .swap-os-modal{background:#fff;border-color:var(--so-border)}#swap-os-app.swap-os-light .swap-os-modal input,#swap-os-app.swap-os-light .swap-os-modal select{background:#f8faff;color:#182237}#swap-os-app.swap-os-light .swap-os-task-row,#swap-os-app.swap-os-light .swap-os-project-row{border-bottom-color:#edf0f6}
@media(min-width:1450px){#swap-os-app .swap-os-content{padding-top:34px}#swap-os-app .swap-os-panel{padding:21px}}
@media(max-width:1120px){#swap-os-app .swap-os-sidebar{flex-basis:205px;width:205px}#swap-os-app .swap-os-topbar{padding:0 18px}#swap-os-app .swap-os-content{padding:23px 18px 15px}#swap-os-app .swap-os-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#swap-os-app .swap-os-dashboard-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}#swap-os-app .swap-os-project-status{display:none}}
@media(max-width:780px){#swap-os-app{display:block;overflow:visible;border-radius:9px}#swap-os-app .swap-os-sidebar{position:absolute;z-index:30;top:0;bottom:0;left:0;width:min(275px,85vw);min-height:100%;transform:translateX(-105%);transition:transform .22s ease;box-shadow:15px 0 45px #0004}#swap-os-app .swap-os-sidebar.open{transform:translateX(0)}#swap-os-app .swap-os-main{width:100%}#swap-os-app .swap-os-mobile-menu{display:grid}#swap-os-app .swap-os-topbar{height:59px;padding:0 12px;justify-content:flex-start}#swap-os-app .swap-os-breadcrumbs{margin-right:auto;gap:7px}#swap-os-app .swap-os-top-actions{gap:6px}#swap-os-app .swap-os-search{width:35px;flex:0 0 35px;padding:0;justify-content:center;border:0;background:transparent}#swap-os-app .swap-os-search input,#swap-os-app .swap-os-search kbd{display:none}#swap-os-app .swap-os-search:focus-within{position:absolute;left:53px;right:91px;width:auto;z-index:7;background:var(--so-panel);border:1px solid var(--so-border);padding:0 8px}#swap-os-app .swap-os-search:focus-within input{display:block}#swap-os-app .swap-os-content{padding:21px 13px 16px}#swap-os-app .swap-os-dashboard-grid{grid-template-columns:1fr}#swap-os-app .swap-os-tasks-panel{order:0}#swap-os-app .swap-os-schedule-panel{order:1}#swap-os-app .swap-os-projects-panel{order:2}#swap-os-app .swap-os-ai-panel{order:3}}
@media(max-width:480px){#swap-os-app .swap-os-welcome-row{align-items:flex-start;flex-direction:column;gap:11px;margin-bottom:17px}#swap-os-app h1{font-size:23px}#swap-os-app .swap-os-stat-grid{gap:9px}#swap-os-app .swap-os-stat-card{padding:12px 10px}#swap-os-app .swap-os-stat-value{font-size:21px}#swap-os-app .swap-os-stat-foot{font-size:7px}#swap-os-app .swap-os-panel{padding:15px 12px}#swap-os-app .swap-os-panel-head{margin-bottom:12px}#swap-os-app .swap-os-task-row{gap:7px}#swap-os-app .swap-os-task-info b{font-size:10px}#swap-os-app .swap-os-priority{font-size:7px;padding:3px 4px}#swap-os-app .swap-os-footer{font-size:7px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){#swap-os-app *,#swap-os-app *:before,#swap-os-app *:after{scroll-behavior:auto!important;transition:none!important}}

/* v0.3.0: full-screen application shell (no WordPress theme header/footer) */
html, body.swap-os-standalone { margin:0!important; padding:0!important; width:100%!important; min-height:100%!important; background:#080d19!important; }
body.swap-os-standalone { overflow-x:hidden; }
body.swap-os-standalone #page,
body.swap-os-standalone #content,
body.swap-os-standalone .site,
body.swap-os-standalone .site-content,
body.swap-os-standalone main,
body.swap-os-standalone .entry-content,
body.swap-os-standalone .wp-site-blocks,
body.swap-os-standalone .wp-block-post-content { max-width:none!important; width:100%!important; margin:0!important; padding:0!important; }
body.swap-os-standalone .entry-header,
body.swap-os-standalone .entry-footer,
body.swap-os-standalone header.site-header,
body.swap-os-standalone footer.site-footer,
body.swap-os-standalone .wp-block-template-part { display:none!important; }
body.swap-os-standalone #swap-os-app { width:100%; max-width:none; min-height:100vh; margin:0; border-radius:0; }
body.swap-os-standalone #swap-os-app .swap-os-sidebar { min-height:100vh; }
body.swap-os-standalone #swap-os-app .swap-os-main { min-width:0; }
body.swap-os-standalone #swap-os-app .swap-os-content { width:100%; max-width:1600px; margin:0 auto; }

/* SWAP OS v0.4.0 project management controls */
#swap-os-app .swap-os-project-edit,#swap-os-app .swap-os-project-delete{border:1px solid var(--so-border);background:transparent;color:var(--so-muted);border-radius:6px;width:25px;height:25px;flex:0 0 25px;cursor:pointer;font-size:13px;display:grid;place-items:center}
#swap-os-app .swap-os-project-edit:hover{color:#82adff;border-color:#477bd8}
#swap-os-app .swap-os-project-delete:hover{color:#ff8d9b;border-color:#b85463}
#swap-os-app .swap-os-project-row{gap:8px}
#swap-os-app .swap-os-project-detail{min-width:80px}
#swap-os-app input[type=range] { accent-color:#5687ff; padding:0; }
#swap-os-app .swap-os-project-status{white-space:nowrap}
@media(max-width:620px){#swap-os-app .swap-os-project-row{flex-wrap:wrap}#swap-os-app .swap-os-project-detail{flex:1 1 calc(100% - 55px)}#swap-os-app .swap-os-project-status{margin-left:40px}}

/* SWAP OS v0.5.0 — calendar event controls */
#swap-os-app .swap-os-timeline-item{position:relative;padding-right:27px}#swap-os-app .swap-os-event-delete{position:absolute;right:0;top:50%;transform:translateY(-50%);width:22px;height:22px;border:1px solid var(--so-border);border-radius:6px;background:transparent;color:var(--so-muted);cursor:pointer;font-size:14px;opacity:.65}#swap-os-app .swap-os-event-delete:hover{opacity:1;color:#ff8d9b;border-color:#b85463}#swap-os-app .swap-os-modal input[type=date],#swap-os-app .swap-os-modal input[type=time],#swap-os-app .swap-os-modal input[type=number]{color-scheme:dark}#swap-os-app.swap-os-light .swap-os-modal input[type=date],#swap-os-app.swap-os-light .swap-os-modal input[type=time],#swap-os-app.swap-os-light .swap-os-modal input[type=number]{color-scheme:light}

/* SWAP OS v0.6.0 — saved goals module */
#swap-os-app .swap-os-goals-panel{min-width:0}
#swap-os-app .swap-os-goal-list{display:flex;flex-direction:column;gap:5px;min-height:54px}
#swap-os-app .swap-os-goal-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--so-border)}
#swap-os-app .swap-os-goal-row:last-child{border-bottom:0}
#swap-os-app .swap-os-goal-symbol{width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:#e7a83a1a;color:#f3bd57;display:grid;place-items:center;font-size:20px}
#swap-os-app .swap-os-goal-detail{min-width:0;flex:1}
#swap-os-app .swap-os-goal-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;font-size:12px}
#swap-os-app .swap-os-goal-title b{overflow-wrap:anywhere}
#swap-os-app .swap-os-goal-title span{color:var(--so-muted);font-size:11px;font-weight:700}
#swap-os-app .swap-os-goal-detail small{display:block;color:var(--so-muted);font-size:10px;line-height:1.5;margin-top:4px;overflow-wrap:anywhere}
#swap-os-app .swap-os-goal-values{color:var(--so-text)!important;font-variant-numeric:tabular-nums}
#swap-os-app .swap-os-goal-edit,#swap-os-app .swap-os-goal-delete{border:1px solid var(--so-border);background:transparent;color:var(--so-muted);border-radius:6px;width:26px;height:26px;cursor:pointer;flex:0 0 26px}
#swap-os-app .swap-os-goal-edit:hover{color:#82adff;border-color:#477bd8}
#swap-os-app .swap-os-goal-delete:hover{color:#ff8d9b;border-color:#b85463}
#swap-os-app .swap-os-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#swap-os-app .swap-os-form-grid>div{min-width:0}
@media(max-width:500px){#swap-os-app .swap-os-form-grid{grid-template-columns:1fr}}

/* SWAP OS v0.7.0 Finance module */
.swap-os-finance-panel{grid-column:1/-1;min-width:0}
.swap-os-finance-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.swap-os-finance-summary>div{padding:16px;border:1px solid var(--swap-border,#24324b);border-radius:12px;background:rgba(90,130,210,.045);display:flex;flex-direction:column;gap:8px;min-width:0}
.swap-os-finance-summary small{color:var(--swap-muted,#91a5c7);font-size:12px}.swap-os-finance-summary strong{font-size:clamp(16px,2vw,24px);overflow-wrap:anywhere}
.swap-os-finance-list{display:flex;flex-direction:column;gap:8px}.swap-os-finance-row{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--swap-border,#24324b);border-radius:10px;min-width:0}
.swap-os-finance-kind{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:10px;font-weight:700}.swap-os-finance-kind.income{color:#34d399;background:rgba(52,211,153,.12)}.swap-os-finance-kind.expense{color:#fb7185;background:rgba(251,113,133,.12)}
.swap-os-finance-detail{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}.swap-os-finance-detail b{overflow-wrap:anywhere}.swap-os-finance-detail small{font-size:11px;color:var(--swap-muted,#91a5c7);overflow-wrap:anywhere}.swap-os-finance-amount{white-space:nowrap;font-size:13px}.swap-os-finance-amount.income{color:#34d399}.swap-os-finance-amount.expense{color:#fb7185}.swap-os-finance-delete{border:0;background:transparent;color:var(--swap-muted,#91a5c7);cursor:pointer;font-size:20px;padding:4px 8px}.swap-os-finance-delete:hover{color:#fb7185}
@media(max-width:640px){.swap-os-finance-summary{grid-template-columns:1fr}.swap-os-finance-row{align-items:flex-start;flex-wrap:wrap}.swap-os-finance-amount{margin-left:46px}.swap-os-finance-delete{margin-left:auto}}

/* SWAP OS v0.8.0 CRM */
.swap-os-crm-panel{margin-top:18px}.swap-os-crm-toolbar{display:flex;gap:10px;margin:14px 0;flex-wrap:wrap}.swap-os-crm-toolbar input,.swap-os-crm-toolbar select{background:var(--swap-surface, #0e1728);border:1px solid var(--swap-border, #26364e);border-radius:10px;color:inherit;padding:11px 13px;min-height:40px}.swap-os-crm-toolbar input{flex:1;min-width:210px}.swap-os-crm-toolbar select{min-width:145px}.swap-os-contact-row{display:flex;align-items:center;gap:12px;padding:13px 2px;border-bottom:1px solid rgba(128,150,190,.13);min-width:0}.swap-os-contact-avatar{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:12px;background:rgba(74,132,255,.16);color:#82b0ff;font-weight:800}.swap-os-contact-detail{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.swap-os-contact-detail b{font-size:13px}.swap-os-contact-detail small,.swap-os-contact-detail p{font-size:11px;color:#8ea2c2;overflow-wrap:anywhere;margin:0}.swap-os-contact-status{font-size:10px;padding:5px 8px;border-radius:6px;background:rgba(83,133,255,.12);color:#8eb6ff;white-space:nowrap}.swap-os-contact-status.customer{background:rgba(44,201,149,.12);color:#4bd8ac}.swap-os-contact-status.partner{background:rgba(159,120,255,.14);color:#bda2ff}.swap-os-contact-status.inactive{background:rgba(148,163,184,.12);color:#9ba9bf}.swap-os-contact-edit,.swap-os-contact-delete{border:1px solid rgba(128,150,190,.2);background:transparent;color:#8fa9ce;border-radius:8px;width:30px;height:30px;cursor:pointer}.swap-os-contact-delete{color:#ff8c9b}@media(max-width:640px){.swap-os-contact-row{gap:8px;flex-wrap:wrap}.swap-os-contact-detail{flex-basis:calc(100% - 60px)}.swap-os-contact-status{margin-left:46px}.swap-os-crm-toolbar input{min-width:100%}}

.swap-os-follow-up{color:var(--swap-accent,#5d5be2);font-size:12px;font-weight:650;margin:5px 0 0}

/* SWAP OS v1.0 shell-by-shell workspace layout */
#swap-os-app .swap-os-content{max-width:none;width:100%;}
#swap-os-app .swap-os-workspaces{display:block;min-width:0;}
#swap-os-app .swap-os-page-view[hidden]{display:none!important;}
#swap-os-app .swap-os-page-view.is-active{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:16px;min-width:0;}
#swap-os-app .swap-os-page-view[data-workspace="Dashboard"]{gap:16px;}
#swap-os-app .swap-os-page-view[data-workspace="Dashboard"] .swap-os-stat-grid{margin-bottom:0;}
#swap-os-app .swap-os-page-view[data-workspace="Dashboard"] .swap-os-ai-panel{max-width:900px;width:100%;}
#swap-os-app .swap-os-page-view .swap-os-panel{width:100%;min-width:0;}
#swap-os-app .swap-os-page-view .swap-os-tasks-panel{min-height:440px;}
#swap-os-app .swap-os-module-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:5px 2px 8px;}
#swap-os-app .swap-os-module-heading h1{font:750 28px/1.2 Manrope,sans-serif;letter-spacing:-.8px;margin:0 0 7px;color:var(--so-text);}
#swap-os-app .swap-os-module-heading p{font-size:12px;color:var(--so-muted);margin:0;}
#swap-os-app .swap-os-coming-soon{border:1px dashed var(--so-border);border-radius:12px;padding:28px;color:var(--so-muted);background:var(--so-panel);font-size:12px;}
@media(max-width:780px){#swap-os-app .swap-os-module-heading h1{font-size:24px;}#swap-os-app .swap-os-page-view.is-active{gap:12px;}}

/* v1.1.0 workspace shell polish */
#swap-os-app .swap-os-page-view[hidden] { display: none !important; }
#swap-os-app .swap-os-page-view.is-active { animation: swapOsPageEnter .16s ease-out; }
#swap-os-app .swap-os-module-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin: 4px 0 22px; padding-bottom:18px; border-bottom:1px solid var(--swap-border, #1c2a40); }
#swap-os-app .swap-os-module-heading h1 { margin:0 0 6px; }
#swap-os-app .swap-os-module-heading p { margin:0; opacity:.72; }
#swap-os-app .swap-os-coming-soon { padding:24px; border:1px solid var(--swap-border, #1c2a40); border-radius:14px; background:rgba(255,255,255,.018); color:var(--swap-muted, #8da0bf); }
#swap-os-app .swap-os-nav-link { transition:background .15s ease, color .15s ease, border-color .15s ease; }
@keyframes swapOsPageEnter { from { opacity:.65; transform:translateY(3px); } to { opacity:1; transform:translateY(0); } }
@media (prefers-reduced-motion: reduce) {
  #swap-os-app .swap-os-page-view.is-active { animation:none; }
  #swap-os-app .swap-os-nav-link { transition:none; }
}

/* v1.2.0 dedicated Tasks workspace */
#swap-os-app .swap-os-task-workspace-tools { margin: 0 0 18px; }
#swap-os-app .swap-os-task-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:14px; }
#swap-os-app .swap-os-task-metric { display:flex; flex-direction:column; gap:7px; padding:15px 17px; border:1px solid var(--swap-border,#1c2a40); border-radius:12px; background:rgba(255,255,255,.025); }
#swap-os-app .swap-os-task-metric span { font-size:12px; color:var(--swap-muted,#8da0bf); }
#swap-os-app .swap-os-task-metric b { font-size:24px; line-height:1.15; }
#swap-os-app .swap-os-task-toolbar { display:grid; grid-template-columns:minmax(150px,1fr) 160px auto; gap:10px; margin-bottom:18px; }
#swap-os-app .swap-os-task-toolbar input, #swap-os-app .swap-os-task-toolbar select { min-width:0; width:100%; padding:11px 13px; border:1px solid var(--swap-border,#1c2a40); border-radius:9px; background:var(--swap-card,#0d1524); color:inherit; }
#swap-os-app .swap-os-tasks-panel { min-width:0; }
@media (max-width:680px) {
  #swap-os-app .swap-os-task-metrics { gap:7px; }
  #swap-os-app .swap-os-task-metric { padding:11px; }
  #swap-os-app .swap-os-task-toolbar { grid-template-columns:1fr 1fr; }
  #swap-os-app .swap-os-task-toolbar input { grid-column:1 / -1; }
}

/* v1.3.0 Calendar workspace */
#swap-os-app .swap-os-calendar-workspace-tools { margin-bottom:18px; }
#swap-os-app .swap-os-calendar-toolbar { display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; margin-bottom:16px; }
#swap-os-app .swap-os-calendar-month-nav, #swap-os-app .swap-os-calendar-actions { display:flex; align-items:center; gap:9px; }
#swap-os-app .swap-os-calendar-month-nav strong { min-width:155px; text-align:center; }
#swap-os-app .swap-os-calendar-month-nav button, #swap-os-app .swap-os-calendar-actions select { border:1px solid var(--swap-border,#1c2a40); background:var(--swap-card,#0d1524); color:inherit; border-radius:9px; padding:9px 12px; }
#swap-os-app .swap-os-calendar-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:7px; }
#swap-os-app .swap-os-calendar-weekday { padding:8px 4px; text-align:center; color:var(--swap-muted,#8da0bf); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
#swap-os-app .swap-os-calendar-day-cell { min-height:112px; min-width:0; display:flex; flex-direction:column; align-items:stretch; gap:8px; text-align:left; padding:9px; border:1px solid var(--swap-border,#1c2a40); border-radius:10px; background:rgba(255,255,255,.018); color:inherit; cursor:pointer; }
#swap-os-app .swap-os-calendar-day-cell:hover { border-color:var(--swap-accent,#4b82ff); background:rgba(75,130,255,.06); }
#swap-os-app .swap-os-calendar-day-cell.is-outside { opacity:.42; }
#swap-os-app .swap-os-calendar-day-cell.is-today { border-color:var(--swap-accent,#4b82ff); box-shadow:inset 0 0 0 1px var(--swap-accent,#4b82ff); }
#swap-os-app .swap-os-calendar-day-number { font-weight:700; font-size:13px; }
#swap-os-app .swap-os-calendar-day-events { display:flex; flex-direction:column; gap:4px; overflow:hidden; }
#swap-os-app .swap-os-calendar-day-events i { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; font-size:10px; font-style:normal; padding:4px 5px; border-radius:5px; background:rgba(75,130,255,.14); border-left:2px solid #4b82ff; }
#swap-os-app .swap-os-calendar-day-events small { font-size:10px; color:var(--swap-muted,#8da0bf); }
#swap-os-app .swap-os-calendar-agenda-row { display:flex; align-items:center; gap:14px; padding:14px; border:1px solid var(--swap-border,#1c2a40); border-radius:10px; margin-bottom:8px; }
#swap-os-app .swap-os-calendar-agenda-date { width:42px; flex:0 0 42px; text-align:center; display:flex; flex-direction:column; padding:7px; border-radius:8px; background:rgba(75,130,255,.12); }
#swap-os-app .swap-os-calendar-agenda-date b { font-size:20px; }
#swap-os-app .swap-os-calendar-agenda-date span, #swap-os-app .swap-os-calendar-agenda-main small { font-size:11px; color:var(--swap-muted,#8da0bf); }
#swap-os-app .swap-os-calendar-agenda-main { min-width:0; flex:1; display:flex; flex-direction:column; gap:5px; }
#swap-os-app .swap-os-calendar-selected-date { font-size:15px; margin:4px 0 14px; }
@media(max-width:700px) {
  #swap-os-app .swap-os-calendar-day-cell { min-height:68px; padding:5px; }
  #swap-os-app .swap-os-calendar-day-events i { font-size:9px; }
  #swap-os-app .swap-os-calendar-month-nav strong { min-width:120px; }
}

/* v1.4.0 Projects workspace */
#swap-os-app .swap-os-projects-toolbar { display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:18px; }
#swap-os-app .swap-os-projects-filters { display:flex; align-items:center; flex-wrap:wrap; gap:6px; padding:4px; border:1px solid var(--swap-border,#1c2a40); border-radius:10px; }
#swap-os-app .swap-os-projects-filters button { padding:8px 12px; border:0; border-radius:7px; background:transparent; color:var(--swap-muted,#8da0bf); cursor:pointer; }
#swap-os-app .swap-os-projects-filters button.is-active { background:rgba(75,130,255,.16); color:var(--swap-text,#eaf0ff); }
#swap-os-app .swap-os-projects-workspace-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
#swap-os-app .swap-os-project-workspace-card { min-width:0; padding:19px; border:1px solid var(--swap-border,#1c2a40); border-radius:14px; background:rgba(255,255,255,.02); }
#swap-os-app .swap-os-project-card-top { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:16px; }
#swap-os-app .swap-os-project-status { display:inline-flex; align-items:center; padding:5px 8px; border-radius:6px; font-size:11px; background:rgba(75,130,255,.13); color:#8db0ff; }
#swap-os-app .swap-os-project-status.status-paused { background:rgba(245,158,11,.12); color:#f5c46b; }
#swap-os-app .swap-os-project-status.status-completed { background:rgba(34,197,94,.12); color:#72dda0; }
#swap-os-app .swap-os-project-edit { border:0; background:transparent; color:var(--swap-muted,#8da0bf); cursor:pointer; }
#swap-os-app .swap-os-project-workspace-card h3 { margin:0 0 7px; font-size:17px; }
#swap-os-app .swap-os-project-workspace-card p { margin:0 0 20px; min-height:36px; color:var(--swap-muted,#8da0bf); font-size:13px; }
#swap-os-app .swap-os-project-progress-label { display:flex; justify-content:space-between; margin-bottom:8px; font-size:12px; }
#swap-os-app .swap-os-project-progress-label span { color:var(--swap-muted,#8da0bf); }
#swap-os-app .swap-os-project-progress-track { height:6px; border-radius:99px; overflow:hidden; background:rgba(255,255,255,.08); }
#swap-os-app .swap-os-project-progress-track span { display:block; height:100%; border-radius:99px; background:linear-gradient(90deg,#4b82ff,#8b5cf6); }
@media(max-width:650px) { #swap-os-app .swap-os-projects-workspace-grid { grid-template-columns:1fr; } }

/* v1.5.0 Finance workspace */
#swap-os-app .swap-os-finance-workspace-tools { margin-bottom:18px; }
#swap-os-app .swap-os-finance-workspace-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:14px; }
#swap-os-app .swap-os-finance-workspace-metrics > div { display:flex; flex-direction:column; gap:8px; padding:16px; border:1px solid var(--swap-border,#1c2a40); border-radius:12px; background:rgba(255,255,255,.02); min-width:0; }
#swap-os-app .swap-os-finance-workspace-metrics span { color:var(--swap-muted,#8da0bf); font-size:12px; }
#swap-os-app .swap-os-finance-workspace-metrics b { font-size:22px; overflow-wrap:anywhere; }
#swap-os-app .swap-os-finance-toolbar { display:grid; grid-template-columns:minmax(150px,1fr) 150px 145px 145px auto auto; gap:10px; margin-bottom:18px; }
#swap-os-app .swap-os-finance-toolbar input, #swap-os-app .swap-os-finance-toolbar select { width:100%; min-width:0; padding:11px 13px; border:1px solid var(--swap-border,#1c2a40); border-radius:9px; background:var(--swap-card,#0d1524); color:inherit; }
@media(max-width:680px) { #swap-os-app .swap-os-finance-workspace-metrics { gap:7px; } #swap-os-app .swap-os-finance-workspace-metrics > div { padding:10px; } #swap-os-app .swap-os-finance-workspace-metrics b { font-size:16px; } #swap-os-app .swap-os-finance-toolbar { grid-template-columns:1fr 1fr; } #swap-os-app .swap-os-finance-toolbar input { grid-column:auto; } #swap-os-app .swap-os-finance-toolbar input[type="search"] { grid-column:1 / -1; } }

/* v1.6.0 CRM workspace */
#swap-os-app .swap-os-crm-workspace-tools { margin-bottom:18px; }
#swap-os-app .swap-os-crm-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:14px; }
#swap-os-app .swap-os-crm-metrics > div { display:flex; flex-direction:column; gap:8px; padding:16px; border:1px solid var(--swap-border,#1c2a40); border-radius:12px; background:rgba(255,255,255,.02); }
#swap-os-app .swap-os-crm-metrics span { color:var(--swap-muted,#8da0bf); font-size:12px; }
#swap-os-app .swap-os-crm-metrics b { font-size:23px; }
#swap-os-app .swap-os-crm-toolbar { display:grid; grid-template-columns:minmax(150px,1fr) 150px 145px 145px auto auto; gap:10px; margin-bottom:18px; }
#swap-os-app .swap-os-crm-toolbar input, #swap-os-app .swap-os-crm-toolbar select { width:100%; min-width:0; padding:11px 13px; border:1px solid var(--swap-border,#1c2a40); border-radius:9px; background:var(--swap-card,#0d1524); color:inherit; }
@media(max-width:680px) { #swap-os-app .swap-os-crm-metrics { gap:7px; } #swap-os-app .swap-os-crm-metrics > div { padding:10px; } #swap-os-app .swap-os-crm-metrics b { font-size:18px; } #swap-os-app .swap-os-crm-toolbar { grid-template-columns:1fr 1fr; } #swap-os-app .swap-os-crm-toolbar input { grid-column:1 / -1; } }

/* v1.7.0 Goals workspace */
#swap-os-app .swap-os-goals-workspace-tools { margin-bottom:18px; }
#swap-os-app .swap-os-goals-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:14px; }
#swap-os-app .swap-os-goals-metrics > div { display:flex; flex-direction:column; gap:8px; padding:16px; border:1px solid var(--swap-border,#1c2a40); border-radius:12px; background:rgba(255,255,255,.02); }
#swap-os-app .swap-os-goals-metrics span { color:var(--swap-muted,#8da0bf); font-size:12px; }
#swap-os-app .swap-os-goals-metrics b { font-size:23px; }
#swap-os-app .swap-os-goals-toolbar { display:grid; grid-template-columns:minmax(150px,1fr) 150px 145px 145px auto auto; gap:10px; margin-bottom:18px; }
#swap-os-app .swap-os-goals-toolbar input, #swap-os-app .swap-os-goals-toolbar select { width:100%; min-width:0; padding:11px 13px; border:1px solid var(--swap-border,#1c2a40); border-radius:9px; background:var(--swap-card,#0d1524); color:inherit; }
@media(max-width:680px) { #swap-os-app .swap-os-goals-metrics { gap:7px; } #swap-os-app .swap-os-goals-metrics > div { padding:10px; } #swap-os-app .swap-os-goals-metrics b { font-size:18px; } #swap-os-app .swap-os-goals-toolbar { grid-template-columns:1fr 1fr; } #swap-os-app .swap-os-goals-toolbar input { grid-column:1 / -1; } }

/* v1.8.0 Settings workspace */
#swap-os-app .swap-os-settings-workspace-tools { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
#swap-os-app .swap-os-settings-card { padding:20px; border:1px solid var(--swap-border,#1c2a40); border-radius:14px; background:rgba(255,255,255,.02); min-width:0; }
#swap-os-app .swap-os-settings-card-heading { margin-bottom:12px; }
#swap-os-app .swap-os-settings-card-heading h3 { margin:0 0 6px; font-size:16px; }
#swap-os-app .swap-os-settings-card-heading p { margin:0; color:var(--swap-muted,#8da0bf); font-size:12px; }
#swap-os-app .swap-os-settings-row { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:14px 0; border-top:1px solid var(--swap-border,#1c2a40); }
#swap-os-app .swap-os-settings-row > span:first-child { display:flex; flex-direction:column; gap:5px; min-width:0; }
#swap-os-app .swap-os-settings-row b { font-size:13px; }
#swap-os-app .swap-os-settings-row small { font-size:11px; color:var(--swap-muted,#8da0bf); }
#swap-os-app .swap-os-settings-row select { max-width:145px; padding:8px 10px; border:1px solid var(--swap-border,#1c2a40); border-radius:8px; background:var(--swap-card,#0d1524); color:inherit; }
#swap-os-app .swap-os-settings-row input[type=checkbox] { width:17px; height:17px; accent-color:#4b82ff; flex:0 0 auto; }
#swap-os-app .swap-os-settings-chip { padding:5px 8px; border-radius:6px; background:rgba(75,130,255,.12); color:#8db0ff; font-size:11px; white-space:nowrap; }
#swap-os-app .swap-os-settings-secondary { margin-top:10px; padding:10px 12px; border:1px solid var(--swap-border,#1c2a40); border-radius:9px; color:inherit; background:transparent; cursor:pointer; }
#swap-os-app.swap-os-compact .swap-os-task-row, #swap-os-app.swap-os-compact .swap-os-contact-row, #swap-os-app.swap-os-compact .swap-os-finance-row, #swap-os-app.swap-os-compact .swap-os-goal-row { padding-top:8px; padding-bottom:8px; }
.swap-os-reduced-motion *, .swap-os-reduced-motion *::before, .swap-os-reduced-motion *::after { animation-duration:.01ms !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
@media(max-width:680px) { #swap-os-app .swap-os-settings-workspace-tools { grid-template-columns:1fr; } }

/* SWAP OS v1.9.0 — Life workspace */
#swap-os-app .swap-os-life-workspace-tools { display:grid; gap:18px; }
#swap-os-app .swap-os-life-intro { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:24px; border:1px solid var(--swap-border,#1c2a40); border-radius:16px; background:linear-gradient(120deg,rgba(83,111,238,.12),rgba(255,255,255,.015)); }
#swap-os-app .swap-os-life-intro h2 { margin:7px 0; font-size:clamp(22px,3vw,30px); letter-spacing:-.04em; }
#swap-os-app .swap-os-life-intro p,#swap-os-app .swap-os-life-note { margin:0; color:var(--swap-muted,#8da0bf); font-size:13px; line-height:1.6; }
#swap-os-app .swap-os-life-date { white-space:nowrap; color:var(--swap-muted,#8da0bf); font-size:13px; }
#swap-os-app .swap-os-life-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
#swap-os-app .swap-os-life-metrics>div { padding:18px; border:1px solid var(--swap-border,#1c2a40); border-radius:13px; background:rgba(255,255,255,.025); }
#swap-os-app .swap-os-life-metrics span { display:block; color:var(--swap-muted,#8da0bf); font-size:12px; margin-bottom:8px; }
#swap-os-app .swap-os-life-metrics b { font-size:25px; letter-spacing:-.04em; }
#swap-os-app .swap-os-life-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; }
#swap-os-app .swap-os-life-toolbar h3 { margin:0; font-size:17px; }
#swap-os-app .swap-os-life-list { display:grid; gap:9px; }
#swap-os-app .swap-os-life-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px; border:1px solid var(--swap-border,#1c2a40); border-radius:12px; background:rgba(255,255,255,.02); }
#swap-os-app .swap-os-life-row label { display:flex; align-items:center; gap:12px; min-width:0; cursor:pointer; }
#swap-os-app .swap-os-life-row input { position:absolute; opacity:0; width:1px; height:1px; }
#swap-os-app .swap-os-life-checkmark { display:grid; place-items:center; width:22px; height:22px; flex:0 0 22px; border:1px solid var(--swap-border,#526078); border-radius:7px; }
#swap-os-app .swap-os-life-row input:checked + .swap-os-life-checkmark { background:var(--swap-accent,#7188ff); border-color:var(--swap-accent,#7188ff); }
#swap-os-app .swap-os-life-row input:checked + .swap-os-life-checkmark:after { content:'✓'; color:#fff; font-size:14px; }
#swap-os-app .swap-os-life-title { min-width:0; font-weight:600; overflow-wrap:anywhere; }
#swap-os-app .swap-os-life-title small { display:block; margin-top:4px; color:var(--swap-muted,#8da0bf); font-size:11px; font-weight:400; }
#swap-os-app .swap-os-life-row.is-done .swap-os-life-title { opacity:.72; }
#swap-os-app .swap-os-life-row>button { border:0; background:transparent; color:var(--swap-muted,#8da0bf); font-size:22px; cursor:pointer; padding:4px 8px; }
#swap-os-app .swap-os-life-empty { display:grid; justify-items:center; text-align:center; gap:8px; padding:34px 18px; border:1px dashed var(--swap-border,#1c2a40); border-radius:14px; }
#swap-os-app .swap-os-life-empty>span { font-size:26px; }
#swap-os-app .swap-os-life-empty p { margin:0 0 8px; color:var(--swap-muted,#8da0bf); font-size:13px; }
@media(max-width:600px) { #swap-os-app .swap-os-life-intro { align-items:flex-start; flex-direction:column; padding:18px; } #swap-os-app .swap-os-life-metrics { gap:8px; } #swap-os-app .swap-os-life-metrics>div { padding:12px; } #swap-os-app .swap-os-life-metrics b { font-size:21px; } }


/* SWAP OS v2.0.0 — Travel workspace */
#swap-os-app .swap-os-travel-workspace-tools { display:grid; gap:18px; }
#swap-os-app .swap-os-travel-hero { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:26px; border:1px solid var(--swap-border,#1c2a40); border-radius:16px; background:linear-gradient(120deg,rgba(83,111,238,.15),rgba(255,255,255,.02)); }
#swap-os-app .swap-os-travel-hero h2 { margin:7px 0; font-size:clamp(22px,3vw,30px); letter-spacing:-.04em; }
#swap-os-app .swap-os-travel-hero p,#swap-os-app .swap-os-travel-note { margin:0; color:var(--swap-muted,#8da0bf); font-size:13px; line-height:1.6; }
#swap-os-app .swap-os-travel-hero-icon { display:grid; place-items:center; width:64px; height:64px; flex:0 0 64px; border-radius:18px; background:rgba(113,136,255,.15); font-size:30px; }
#swap-os-app .swap-os-travel-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
#swap-os-app .swap-os-travel-metrics>div { padding:18px; border:1px solid var(--swap-border,#1c2a40); border-radius:13px; background:rgba(255,255,255,.025); }
#swap-os-app .swap-os-travel-metrics span { display:block; color:var(--swap-muted,#8da0bf); font-size:12px; margin-bottom:8px; }
#swap-os-app .swap-os-travel-metrics b { font-size:24px; letter-spacing:-.04em; }
#swap-os-app .swap-os-travel-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; }
#swap-os-app .swap-os-travel-toolbar h3 { margin:0; font-size:17px; }
#swap-os-app .swap-os-travel-list { display:grid; gap:12px; }
#swap-os-app .swap-os-travel-card { padding:18px; border:1px solid var(--swap-border,#1c2a40); border-radius:14px; background:rgba(255,255,255,.02); }
#swap-os-app .swap-os-travel-card-top { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
#swap-os-app .swap-os-travel-destination { font-size:17px; font-weight:700; overflow-wrap:anywhere; }
#swap-os-app .swap-os-travel-dates,#swap-os-app .swap-os-travel-notes { color:var(--swap-muted,#8da0bf); font-size:12px; line-height:1.6; margin:5px 0 0; white-space:pre-wrap; overflow-wrap:anywhere; }
#swap-os-app .swap-os-travel-budget { white-space:nowrap; font-size:12px; }
#swap-os-app .swap-os-travel-card-actions { display:flex; gap:8px; margin-top:12px; }
#swap-os-app .swap-os-travel-card-actions button { border:1px solid var(--swap-border,#1c2a40); border-radius:8px; padding:7px 10px; background:transparent; color:inherit; cursor:pointer; font-size:12px; }
#swap-os-app .swap-os-travel-empty { display:grid; justify-items:center; text-align:center; gap:8px; padding:34px 18px; border:1px dashed var(--swap-border,#1c2a40); border-radius:14px; }
#swap-os-app .swap-os-travel-empty>span { font-size:26px; }
#swap-os-app .swap-os-travel-empty p { margin:0 0 8px; color:var(--swap-muted,#8da0bf); font-size:13px; }
@media(max-width:600px) { #swap-os-app .swap-os-travel-hero { padding:18px; } #swap-os-app .swap-os-travel-metrics { gap:8px; } #swap-os-app .swap-os-travel-metrics>div { padding:12px; } #swap-os-app .swap-os-travel-metrics b { font-size:19px; } #swap-os-app .swap-os-travel-card-top { flex-direction:column; } }

/* SWAP OS v2.1.0 Notes workspace */
#swap-os-app .swap-os-notes-workspace-tools{display:grid;gap:18px}#swap-os-app .swap-os-notes-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:25px;border:1px solid var(--so-border);border-radius:14px;background:linear-gradient(125deg,#17233b,#101828)}#swap-os-app .swap-os-notes-intro h2{font-size:23px;margin:7px 0}#swap-os-app .swap-os-notes-intro p{margin:0;color:var(--so-muted);font-size:12px}#swap-os-app .swap-os-notes-icon{display:grid;place-items:center;flex:0 0 60px;height:60px;border-radius:16px;background:#5795ff20;color:#8cb5ff;font-size:32px}#swap-os-app .swap-os-notes-toolbar{display:flex;gap:10px}#swap-os-app .swap-os-notes-toolbar input{flex:1;min-width:0;background:var(--so-panel);border:1px solid var(--so-border);border-radius:8px;padding:11px 13px;color:var(--so-text)}#swap-os-app .swap-os-notes-toolbar .swap-os-primary-btn{width:auto;white-space:nowrap}#swap-os-app .swap-os-notes-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}#swap-os-app .swap-os-note-card{min-width:0;padding:17px;border:1px solid var(--so-border);border-radius:11px;background:var(--so-panel)}#swap-os-app .swap-os-note-card-head{display:flex;align-items:start;justify-content:space-between;gap:12px}#swap-os-app .swap-os-note-card h3{font:700 14px Manrope,sans-serif;margin:0;color:var(--so-text);overflow-wrap:anywhere}#swap-os-app .swap-os-note-card-head small{color:var(--so-muted);font-size:9px;white-space:nowrap}#swap-os-app .swap-os-note-card>p{font-size:11px;line-height:1.7;color:var(--so-muted);white-space:normal;overflow-wrap:anywhere;margin:13px 0;max-height:180px;overflow:auto}#swap-os-app .swap-os-note-actions{display:flex;gap:14px;border-top:1px solid var(--so-border);padding-top:11px}#swap-os-app .swap-os-note-actions button{border:0;background:transparent;color:#8db7ff;font-size:10px;padding:0}#swap-os-app .swap-os-note-actions button:last-child{color:#e68d9c}#swap-os-app .swap-os-notes-empty{grid-column:1/-1;text-align:center;padding:45px 20px;border:1px dashed var(--so-border);border-radius:12px}#swap-os-app .swap-os-notes-empty>span{display:block;font-size:28px;color:var(--so-blue);margin-bottom:8px}#swap-os-app .swap-os-notes-empty b{font-size:13px}#swap-os-app .swap-os-notes-empty p,#swap-os-app .swap-os-notes-footnote{font-size:10px;color:var(--so-muted)}#swap-os-app .swap-os-notes-empty .swap-os-primary-btn{max-width:220px;margin:16px auto 0}#swap-os-app .swap-os-notes-footnote{margin:0}@media(max-width:650px){#swap-os-app .swap-os-notes-list{grid-template-columns:1fr}#swap-os-app .swap-os-notes-intro{padding:18px}#swap-os-app .swap-os-notes-toolbar .swap-os-primary-btn{padding:10px}}

/* SWAP OS v2.2.0 — Knowledge reference library */
#swap-os-app .swap-os-knowledge-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px;border:1px solid var(--so-border);border-radius:14px;background:linear-gradient(120deg,#172744,#111a2b);margin-bottom:18px}
#swap-os-app .swap-os-knowledge-hero h2{font:750 clamp(20px,2.2vw,29px) Manrope,sans-serif;letter-spacing:-.7px;margin:8px 0;color:var(--so-text)}
#swap-os-app .swap-os-knowledge-hero p{margin:0;color:var(--so-muted);max-width:600px}
#swap-os-app .swap-os-knowledge-symbol{display:grid;place-items:center;flex:0 0 60px;height:60px;border-radius:16px;background:#5795ff20;color:#8db7ff;font-size:30px}
#swap-os-app .swap-os-knowledge-toolbar{display:flex;gap:10px;margin:18px 0;flex-wrap:wrap}
#swap-os-app .swap-os-knowledge-toolbar input{flex:1;min-width:210px;min-height:42px;padding:10px 13px;border:1px solid var(--so-border);border-radius:9px;background:var(--so-panel);color:var(--so-text)}
#swap-os-app .swap-os-knowledge-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#swap-os-app .swap-os-knowledge-card,#swap-os-app .swap-os-knowledge-empty{border:1px solid var(--so-border);border-radius:12px;background:var(--so-panel);padding:17px;min-width:0}
#swap-os-app .swap-os-knowledge-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
#swap-os-app .swap-os-knowledge-card h3{font:700 14px Manrope,sans-serif;margin:0 0 10px;overflow-wrap:anywhere}
#swap-os-app .swap-os-knowledge-card small{color:var(--so-muted);font-size:10px;white-space:nowrap}
#swap-os-app .swap-os-knowledge-card p{color:var(--so-muted);font-size:12px;line-height:1.7;overflow-wrap:anywhere;white-space:normal}
#swap-os-app .swap-os-knowledge-link{display:inline-block;color:#8db7ff!important;font-size:11px;margin:0 0 12px}
#swap-os-app .swap-os-knowledge-actions{display:flex;gap:8px;border-top:1px solid var(--so-border);padding-top:11px}
#swap-os-app .swap-os-knowledge-actions button{border:1px solid var(--so-border);border-radius:7px;background:transparent;color:var(--so-muted);padding:6px 10px;font-size:11px}
#swap-os-app .swap-os-knowledge-actions button:hover{color:var(--so-text);border-color:#477bd8}
#swap-os-app .swap-os-knowledge-empty{grid-column:1/-1;text-align:center;padding:42px 18px}
#swap-os-app .swap-os-knowledge-empty>span{display:block;font-size:27px;color:#8db7ff;margin-bottom:10px}
#swap-os-app .swap-os-knowledge-empty b{display:block;font-size:14px;margin-bottom:7px}
#swap-os-app .swap-os-knowledge-empty p,#swap-os-app .swap-os-knowledge-note{font-size:11px;color:var(--so-muted)}
#swap-os-app .swap-os-knowledge-note{margin-top:16px}
@media(max-width:680px){#swap-os-app .swap-os-knowledge-list{grid-template-columns:1fr}#swap-os-app .swap-os-knowledge-hero{padding:18px}#swap-os-app .swap-os-knowledge-symbol{flex-basis:45px;height:45px}}

/* SWAP OS v2.3.0 Inbox workspace */
#swap-os-app .swap-os-inbox-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px;border:1px solid var(--so-border);border-radius:14px;background:linear-gradient(120deg,#20304a,#111a2b);margin-bottom:18px}
#swap-os-app .swap-os-inbox-hero h2{font:750 clamp(20px,2.2vw,29px) Manrope,sans-serif;letter-spacing:-.7px;margin:8px 0;color:var(--so-text)}
#swap-os-app .swap-os-inbox-hero p{margin:0;color:var(--so-muted);max-width:600px}
#swap-os-app .swap-os-inbox-symbol{display:grid;place-items:center;flex:0 0 60px;height:60px;border-radius:16px;background:#5795ff20;color:#8db7ff;font-size:30px}
#swap-os-app .swap-os-inbox-toolbar{display:flex;gap:10px;margin:18px 0;flex-wrap:wrap}
#swap-os-app .swap-os-inbox-toolbar input,#swap-os-app .swap-os-inbox-toolbar select{min-height:42px;padding:10px 13px;border:1px solid var(--so-border);border-radius:9px;background:var(--so-panel);color:var(--so-text)}
#swap-os-app .swap-os-inbox-toolbar input{flex:1;min-width:210px}
#swap-os-app .swap-os-inbox-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#swap-os-app .swap-os-inbox-card,#swap-os-app .swap-os-inbox-empty{border:1px solid var(--so-border);border-radius:12px;background:var(--so-panel);padding:17px;min-width:0}
#swap-os-app .swap-os-inbox-card h3{font:700 14px Manrope,sans-serif;margin:0 0 8px;overflow-wrap:anywhere}
#swap-os-app .swap-os-inbox-card p{color:var(--so-muted);white-space:normal;overflow-wrap:anywhere;margin:0 0 12px}
#swap-os-app .swap-os-inbox-card small{color:var(--so-muted)}
#swap-os-app .swap-os-inbox-card.is-done h3{text-decoration:line-through;opacity:.7}
#swap-os-app .swap-os-inbox-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
#swap-os-app .swap-os-inbox-actions button{border:1px solid var(--so-border);border-radius:8px;background:transparent;color:var(--so-text);padding:7px 10px;cursor:pointer}
#swap-os-app .swap-os-inbox-empty{grid-column:1/-1;text-align:center;padding:32px}
#swap-os-app .swap-os-inbox-empty p{color:var(--so-muted)}
#swap-os-app .swap-os-inbox-note{font-size:12px;color:var(--so-muted);margin-top:16px}
@media(max-width:700px){#swap-os-app .swap-os-inbox-list{grid-template-columns:1fr}}

#swap-os-app .swap-os-backup-workspace-tools{display:grid;gap:18px}#swap-os-app .swap-os-backup-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}#swap-os-app .swap-os-backup-import{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border:1px solid var(--so-border);border-radius:8px;color:var(--so-text);font-size:12px;cursor:pointer}#swap-os-app .swap-os-backup-import input{max-width:230px;margin-left:10px;font-size:10px}#swap-os-app .swap-os-backup-warning{padding:18px;border:1px solid var(--so-border);border-radius:10px;background:var(--so-panel)}#swap-os-app .swap-os-backup-warning b{font-size:12px}#swap-os-app .swap-os-backup-warning p{font-size:11px;line-height:1.7;color:var(--so-muted);margin:8px 0 0}#swap-os-app #swapOsBackupStatus{font-size:11px;color:var(--so-muted)}

/* v2.8.0 selected workspace sync controls */
.swap-os-sync-keys{margin:18px 0;padding:18px;border:1px solid var(--swap-border,rgba(128,128,128,.22));border-radius:16px}.swap-os-sync-keys h3{margin:0 0 6px}.swap-os-sync-keys p{margin:0 0 14px;opacity:.75}.swap-os-sync-key-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.swap-os-sync-key-grid label{display:flex;align-items:center;gap:9px;padding:10px 12px;border-radius:10px;background:rgba(128,128,128,.07);font-size:14px}.swap-os-sync-key-grid input{accent-color:var(--swap-accent,#6b7cff)}.swap-os-sync-compare{margin:14px 0;padding:12px 14px;border-radius:10px;background:rgba(128,128,128,.08);font-size:13px;line-height:1.7;overflow-wrap:anywhere}

.swap-os-sync-history{margin:18px 0;padding:16px;border:1px solid var(--swap-border,rgba(128,128,128,.2));border-radius:14px}.swap-os-sync-history h3{margin:0 0 6px}.swap-os-sync-history>p{margin:0 0 12px;opacity:.72;font-size:13px}.swap-os-sync-history-row{display:flex;flex-direction:column;gap:4px;padding:10px 0;border-top:1px solid var(--swap-border,rgba(128,128,128,.16));overflow-wrap:anywhere}.swap-os-sync-history-row strong{font-size:13px}.swap-os-sync-history-row span{font-size:12px;opacity:.75}


/* v3.15.0 Finance overview dashboard */
.swap-os-finance-overview{display:grid;grid-template-columns:minmax(220px,1.25fr) repeat(3,minmax(140px,1fr));gap:12px;margin:18px 0}.swap-os-finance-hero,.swap-os-finance-kpi{position:relative;overflow:hidden;min-height:145px;border:1px solid var(--swap-border,rgba(128,128,128,.2));border-radius:16px;padding:18px;display:flex;flex-direction:column;align-items:flex-start;gap:9px}.swap-os-finance-hero{background:linear-gradient(135deg,#101e39,#1c3764);color:#fff;border-color:transparent}.swap-os-finance-hero>span,.swap-os-finance-kpi>span{font-size:11px;font-weight:750;letter-spacing:.07em;text-transform:uppercase;opacity:.8}.swap-os-finance-hero>strong{font-size:clamp(24px,3vw,34px);line-height:1.15;letter-spacing:-.04em}.swap-os-finance-hero>small,.swap-os-finance-kpi>small{font-size:12px;opacity:.72}.swap-os-finance-kpi>strong{font-size:clamp(20px,2vw,27px);letter-spacing:-.035em}.swap-os-finance-income-card{background:linear-gradient(135deg,rgba(16,185,129,.13),rgba(16,185,129,.04))}.swap-os-finance-expense-card{background:linear-gradient(135deg,rgba(249,115,22,.13),rgba(249,115,22,.04))}.swap-os-finance-net-card{background:linear-gradient(135deg,rgba(59,130,246,.13),rgba(99,102,241,.05))}.swap-os-finance-mini-bars{position:absolute;bottom:0;right:12px;height:42px;width:45%;display:flex;align-items:flex-end;gap:5px;opacity:.6}.swap-os-finance-mini-bars i{display:block;flex:1;min-width:3px;border-radius:4px 4px 0 0;background:#60a5fa}.swap-os-finance-mini-bars i:nth-child(2n){background:#34d399}.swap-os-finance-insights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 18px}.swap-os-finance-insights>div{display:flex;align-items:center;gap:11px;min-width:0;padding:13px 15px;border:1px solid var(--swap-border,rgba(128,128,128,.2));border-radius:13px}.swap-os-finance-insight-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:11px;background:rgba(59,130,246,.1);color:#2563eb;font-size:20px}.swap-os-finance-insights>div>span:last-child{display:flex;flex-direction:column;gap:4px;min-width:0}.swap-os-finance-insights small{font-size:11px;opacity:.72}.swap-os-finance-insights strong{font-size:14px;overflow-wrap:anywhere}@media(max-width:900px){.swap-os-finance-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.swap-os-finance-hero{grid-column:1/-1}.swap-os-finance-insights{grid-template-columns:1fr}}@media(max-width:520px){.swap-os-finance-overview{grid-template-columns:1fr}.swap-os-finance-hero{grid-column:auto}.swap-os-finance-kpi{min-height:115px}}

/* v3.19.0 finance period chart */
.swap-os-finance-chart-head{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;position:relative;z-index:2}.swap-os-finance-chart-head>span{font-size:11px;font-weight:750;letter-spacing:.07em;text-transform:uppercase;opacity:.9}.swap-os-finance-chart-head select{max-width:125px;min-width:0;border:1px solid rgba(255,255,255,.25);border-radius:8px;background:rgba(255,255,255,.1);color:#fff;padding:5px 7px;font-size:11px}.swap-os-finance-chart-head select option{color:#111}.swap-os-finance-mini-bars{height:48px;left:16px;right:16px;width:auto;gap:4px;opacity:.95;align-items:stretch}.swap-os-finance-bar-group{display:flex;flex:1;min-width:0;flex-direction:column;justify-content:flex-end;align-items:center;gap:2px;height:100%}.swap-os-finance-bar-pair{height:35px;display:flex;align-items:flex-end;gap:2px;width:100%;justify-content:center}.swap-os-finance-bar-pair i{display:block;width:35%;max-width:8px;min-height:0;border-radius:3px 3px 0 0}.swap-os-finance-bar-pair i.income{background:#34d399}.swap-os-finance-bar-pair i.expense{background:#fb923c}.swap-os-finance-bar-group small{font-size:8px;line-height:1;color:rgba(255,255,255,.75)}.swap-os-finance-chart-legend{display:flex;gap:12px;font-size:10px;color:rgba(255,255,255,.78);margin-top:auto;position:relative;z-index:1}.swap-os-finance-chart-legend span{display:flex;align-items:center;gap:5px}.swap-os-finance-chart-legend i{display:inline-block;width:7px;height:7px;border-radius:2px}.swap-os-finance-chart-legend i.income{background:#34d399}.swap-os-finance-chart-legend i.expense{background:#fb923c}.swap-os-finance-hero{padding-bottom:82px}

/* v3.20.0 finance category breakdown */
.swap-os-finance-categories{border:1px solid var(--swap-border,rgba(128,128,128,.2));border-radius:16px;padding:18px;margin:0 0 18px}.swap-os-finance-category-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.swap-os-finance-category-head h3{margin:4px 0 0;font-size:18px}.swap-os-finance-category-head>span{font-size:12px;opacity:.7;text-align:right}.swap-os-finance-category-row{margin:0 0 15px}.swap-os-finance-category-row:last-child{margin-bottom:0}.swap-os-finance-category-label{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:7px}.swap-os-finance-category-label span{text-transform:capitalize}.swap-os-finance-category-label strong{font-variant-numeric:tabular-nums}.swap-os-finance-category-track{height:7px;background:rgba(128,128,128,.14);border-radius:99px;overflow:hidden}.swap-os-finance-category-track i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#3b82f6,#34d399)}.swap-os-finance-category-row small{display:block;margin-top:5px;font-size:11px;opacity:.65}

.swap-os-report-subtitle{margin:5px 0 0;font-size:12px;opacity:.68}.swap-os-report-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.swap-os-report-kpis>div{padding:12px;border:1px solid var(--swap-border,rgba(128,128,128,.2));border-radius:12px;min-width:0}.swap-os-report-kpis small{display:block;font-size:11px;opacity:.68;margin-bottom:7px}.swap-os-report-kpis strong{font-size:clamp(15px,2vw,20px);overflow-wrap:anywhere}.swap-os-report-table-wrap{width:100%;overflow-x:auto}.swap-os-report-table{width:100%;border-collapse:collapse;font-size:12px}.swap-os-report-table th,.swap-os-report-table td{text-align:left;padding:11px 9px;border-bottom:1px solid var(--swap-border,rgba(128,128,128,.16));white-space:nowrap}.swap-os-report-table th{opacity:.65;font-weight:600}.swap-os-report-table td:not(:first-child),.swap-os-report-table th:not(:first-child){text-align:right}.swap-os-report-note{font-size:11px;opacity:.65;margin:14px 0 0}@media(max-width:560px){.swap-os-report-kpis{grid-template-columns:1fr}.swap-os-finance-reports .swap-os-finance-category-head{align-items:flex-start;flex-direction:column}}

/* SWAP OS 3.22 Finance budget manager */
.swap-os-budget-form{display:grid;grid-template-columns:1fr 1.2fr 1fr auto;gap:12px;align-items:end;margin:12px 0 18px}.swap-os-budget-form label{display:grid;gap:6px;font-size:12px;opacity:.85}.swap-os-budget-form input{min-width:0;width:100%;box-sizing:border-box;border:1px solid var(--swap-border,rgba(128,128,128,.24));border-radius:10px;padding:10px 11px;background:var(--swap-card,transparent);color:inherit;font:inherit}.swap-os-budget-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 16px}.swap-os-budget-summary-card{padding:13px;border:1px solid var(--swap-border,rgba(128,128,128,.2));border-radius:12px;min-width:0}.swap-os-budget-summary-card small{display:block;font-size:11px;opacity:.68;margin-bottom:7px}.swap-os-budget-summary-card strong{font-size:clamp(15px,2vw,20px);overflow-wrap:anywhere}.swap-os-budget-summary-card strong.over,.swap-os-budget-over{color:#ef6a6a}.swap-os-budget-track{height:4px;background:rgba(128,128,128,.15);border-radius:9px;overflow:hidden;margin-top:5px}.swap-os-budget-track i{display:block;height:100%;background:linear-gradient(90deg,#38bdf8,#34d399)}.swap-os-budget-status{display:block;font-size:10px;opacity:.7;margin-top:3px}.swap-os-budget-status.near{color:#d9a441;opacity:1}.swap-os-budget-status.over{color:#ef6a6a;opacity:1}.swap-os-budget-delete{border:0;background:transparent;color:inherit;opacity:.7;cursor:pointer;text-decoration:underline;font:inherit;font-size:11px}.swap-os-budget-delete:hover{opacity:1}@media(max-width:720px){.swap-os-budget-form{grid-template-columns:1fr 1fr}.swap-os-budget-form button{grid-column:1/-1}.swap-os-budget-summary{grid-template-columns:1fr}}

/* v3.23.0 historical finance trends */
.swap-os-trend-month-head,.swap-os-trend-row{display:grid;grid-template-columns:minmax(100px,1.2fr) repeat(6,minmax(62px,1fr));gap:8px;align-items:center}.swap-os-trend-month-head{padding:10px 8px;font-size:10px;opacity:.62;border-bottom:1px solid var(--swap-border,rgba(128,128,128,.16))}.swap-os-trend-month-head span:not(:first-child){text-align:right}.swap-os-trend-row{padding:10px 8px;border-bottom:1px solid var(--swap-border,rgba(128,128,128,.12))}.swap-os-trend-row>strong{font-size:12px;overflow-wrap:anywhere}.swap-os-trend-value{display:flex;flex-direction:column;gap:5px;min-width:0;text-align:right}.swap-os-trend-value b{font-size:10px;font-weight:600;white-space:nowrap}.swap-os-trend-value i{height:4px;display:block;background:var(--swap-border,rgba(128,128,128,.14));border-radius:5px;overflow:hidden}.swap-os-trend-value em{display:block;height:100%;border-radius:5px;background:var(--swap-accent,#7c6df2)}@media(max-width:620px){.swap-os-trend-month-head,.swap-os-trend-row{grid-template-columns:minmax(88px,1fr) repeat(6,minmax(54px,.8fr));gap:5px;min-width:510px}.swap-os-finance-trends #swapOsFinanceTrendRows{overflow-x:auto}.swap-os-trend-value b{font-size:9px}}

/* v3.24.0 month-end forecast */
.swap-os-finance-forecast .swap-os-report-kpis strong{font-variant-numeric:tabular-nums}.swap-os-finance-forecast .swap-os-report-table td,.swap-os-finance-forecast .swap-os-report-table th{white-space:nowrap}

.swap-os-forecast-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.swap-os-forecast-actions>span{font-size:12px;color:var(--swap-muted,#687386)}.swap-os-finance-forecast .swap-os-report-table{min-width:760px}

/* v3.26 manual financial accounts */
.swap-os-accounts-panel .swap-os-finance-category-head>strong{font-size:clamp(18px,2vw,24px);white-space:nowrap}.swap-os-accounts-panel .swap-os-budget-form{margin-top:14px}.swap-os-accounts-panel .swap-os-report-table-wrap{margin-top:10px}

/* v3.29.0 invoice tracker */
.swap-os-invoices-panel .swap-os-budget-form{grid-template-columns:1.4fr 1fr 1fr 1fr auto}.swap-os-invoice-status{display:inline-block;padding:4px 7px;border-radius:7px;font-size:10px;text-transform:capitalize;background:rgba(128,128,128,.13)}.swap-os-invoice-status.paid{color:#16a34a;background:rgba(22,163,74,.12)}.swap-os-invoice-status.overdue{color:#dc2626;background:rgba(220,38,38,.12)}.swap-os-invoice-status.unpaid{color:#b7791f;background:rgba(217,164,65,.13)}@media(max-width:900px){.swap-os-invoices-panel .swap-os-budget-form{grid-template-columns:1fr 1fr}.swap-os-invoices-panel .swap-os-budget-form button{grid-column:1/-1}}
.swap-os-recurring-panel .swap-os-budget-form{grid-template-columns:1.4fr .8fr 1fr 1fr 1fr auto}.swap-os-recurring-panel .swap-os-finance-category-head>strong{font-size:20px;color:var(--swap-os-accent,#16a34a)}@media(max-width:1000px){.swap-os-recurring-panel .swap-os-budget-form{grid-template-columns:1fr 1fr}}@media(max-width:600px){.swap-os-recurring-panel .swap-os-budget-form{grid-template-columns:1fr}.swap-os-recurring-panel .swap-os-budget-form button{grid-column:1}}

.swap-os-recurring-upcoming{margin:14px 0;padding:14px;border:1px solid var(--swap-os-border,#e5e7eb);border-radius:12px}.swap-os-recurring-upcoming-head{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center}.swap-os-recurring-upcoming-head span{font-size:12px;opacity:.8}.swap-os-recurring-upcoming-list{display:grid;gap:8px;margin-top:12px}.swap-os-recurring-upcoming-list>div{display:flex;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid var(--swap-os-border,#e5e7eb);font-size:13px}.swap-os-recurring-upcoming-list small{opacity:.7}@media(max-width:600px){.swap-os-recurring-upcoming-list>div{flex-direction:column;gap:3px}}

/* v3.35.0: readable recurring occurrence history */
.swap-os-recurring-history{margin-top:6px;font-size:12px}.swap-os-recurring-history summary{cursor:pointer;color:var(--swap-os-accent,#16a34a);font-weight:600}.swap-os-recurring-history>div{max-height:180px;overflow:auto;padding:6px 8px;border:1px solid var(--swap-os-border,#e5e7eb);border-radius:8px;margin-top:5px}.swap-os-recurring-history p{margin:4px 0;padding-bottom:4px;border-bottom:1px solid var(--swap-os-border,#e5e7eb)}.swap-os-recurring-history p:last-child{border-bottom:0}

/* v3.38.0 Finance navigation styled to match the requested reference */
#swap-os-app .swap-os-finance-tabs{display:flex;align-items:center;gap:5px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;padding:8px;margin:0 0 18px;border:1px solid #dfe4ec;border-radius:16px;background:#fff;white-space:nowrap;position:sticky;top:64px;z-index:4}
#swap-os-app .swap-os-finance-tabs a{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:42px;padding:0 14px;border-radius:10px;color:#101827;font-size:13px;font-weight:700;text-decoration:none;transition:background .15s,color .15s}
#swap-os-app .swap-os-finance-tabs a:hover{background:#f0f3f8}
#swap-os-app .swap-os-finance-tabs a.active{background:#111827;color:#fff}
#swap-os-app .swap-os-finance-tabs a:focus-visible{outline:2px solid #2860ed;outline-offset:2px}
#swap-os-app .swap-os-finance-panel{scroll-margin-top:125px}
#swap-os-app .swap-os-finance-categories,#swap-os-app .swap-os-finance-list{scroll-margin-top:125px}
@media(max-width:780px){#swap-os-app .swap-os-finance-tabs{top:58px;border-radius:12px;padding:6px;gap:3px}#swap-os-app .swap-os-finance-tabs a{min-height:38px;padding:0 12px;font-size:12px}}

/* v3.39.0: keyboard/touch navigation polish for the Finance section bar */
#swap-os-app .swap-os-finance-tabs{scroll-padding-inline:8px;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}
#swap-os-app .swap-os-finance-tabs a{scroll-margin-inline:8px}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-finance-tabs{scroll-behavior:auto}#swap-os-app .swap-os-finance-tabs a{transition:none}}

/* Finance tab destinations account for the sticky tab bar. */
#swap-os-app .swap-os-finance-overview,#swap-os-app .swap-os-finance-list,#swap-os-app .swap-os-finance-categories{scroll-margin-top:130px}
@media(max-width:780px){#swap-os-app .swap-os-finance-overview,#swap-os-app .swap-os-finance-list,#swap-os-app .swap-os-finance-categories{scroll-margin-top:105px}}


/* ========================================================================
   SWAP OS 2090 — Obsidian Quantum Glass design layer (v3.46.0)
   Additive overrides intentionally preserve the existing module layouts.
   ======================================================================== */
#swap-os-app {
  --so-bg: #020204;
  --so-sidebar: #050508;
  --so-panel: rgba(10, 10, 16, .78);
  --so-panel-hover: rgba(18, 18, 28, .92);
  --so-border: rgba(255,255,255,.075);
  --so-border-glow: rgba(0,198,255,.34);
  --so-text: #f5f7ff;
  --so-muted: #9298aa;
  --so-blue: #00c6ff;
  --so-green: #00f5a0;
  --so-violet: #bd5cff;
  --so-amber: #ffb547;
  --so-2090-ease: cubic-bezier(.16,1,.3,1);
  background:
    radial-gradient(ellipse at 72% -12%, rgba(91,35,175,.18), transparent 38%),
    radial-gradient(ellipse at 48% 105%, rgba(0,102,255,.08), transparent 45%),
    var(--so-bg);
  color: var(--so-text);
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", sans-serif;
  letter-spacing: -.018em;
  border-radius: 0;
}
#swap-os-app * { box-sizing: border-box; }
#swap-os-app button, #swap-os-app input, #swap-os-app select, #swap-os-app textarea {
  font-family: inherit;
}
#swap-os-app .swap-os-sidebar {
  background: linear-gradient(180deg, rgba(7,7,12,.98), rgba(3,3,7,.98));
  border-right-color: rgba(255,255,255,.065);
  box-shadow: 18px 0 60px rgba(0,0,0,.25);
}
#swap-os-app .swap-os-brand-mark {
  background: linear-gradient(145deg,#fff 0%,#b8c2d8 48%,#6e7b98 100%);
  color: #06060a;
  box-shadow: 0 0 22px rgba(153,126,255,.18), inset 0 1px 0 #fff;
}
#swap-os-app .swap-os-brand-copy b {
  background: linear-gradient(180deg,#fff 15%,#aeb5c8 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  letter-spacing: -.035em;
}
#swap-os-app .swap-os-nav-link {
  min-height: 39px;
  border: 1px solid transparent;
  border-radius: 9px;
  color: #8e95a8;
  transition: background .22s var(--so-2090-ease), color .22s var(--so-2090-ease), border-color .22s var(--so-2090-ease), transform .22s var(--so-2090-ease);
}
#swap-os-app .swap-os-nav-link:hover {
  background: rgba(255,255,255,.045);
  border-color: rgba(255,255,255,.055);
  color: #f8f9ff;
  transform: translateX(2px);
}
#swap-os-app .swap-os-nav-link.active {
  color: #fff;
  background: linear-gradient(100deg,rgba(161,75,255,.19),rgba(0,198,255,.075));
  border-color: rgba(165,105,255,.22);
  box-shadow: inset 2px 0 #b45cff, 0 0 24px rgba(116,56,255,.07);
}
#swap-os-app .swap-os-nav-link.active > span { color: #c58aff; }
#swap-os-app .swap-os-topbar {
  background: rgba(3,3,8,.78);
  border-bottom-color: rgba(255,255,255,.065);
  backdrop-filter: blur(28px) saturate(180%);
  -webkit-backdrop-filter: blur(28px) saturate(180%);
}
#swap-os-app .swap-os-search,
#swap-os-app .swap-os-icon-btn,
#swap-os-app .swap-os-date-pill,
#swap-os-app .swap-os-workspace {
  background: rgba(255,255,255,.035);
  border-color: rgba(255,255,255,.075);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
#swap-os-app .swap-os-search:focus-within,
#swap-os-app .swap-os-icon-btn:hover {
  border-color: rgba(0,198,255,.42);
  box-shadow: 0 0 0 3px rgba(0,198,255,.055), 0 0 22px rgba(0,198,255,.08);
}
#swap-os-app h1 {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", sans-serif;
  font-weight: 720;
  letter-spacing: -.055em;
  text-shadow: 0 0 32px rgba(190,150,255,.08);
}
#swap-os-app h1 span {
  background: linear-gradient(100deg,#fff 0%,#d4b2ff 42%,#79dcff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
#swap-os-app h2 { letter-spacing: -.035em; }
#swap-os-app .swap-os-stat-card,
#swap-os-app .swap-os-panel {
  background: linear-gradient(145deg,rgba(17,17,26,.84),rgba(5,5,10,.83));
  border: 1px solid rgba(255,255,255,.075);
  border-radius: 15px;
  box-shadow: 0 18px 48px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.025);
  backdrop-filter: blur(24px) saturate(145%);
  -webkit-backdrop-filter: blur(24px) saturate(145%);
  transition: border-color .28s var(--so-2090-ease), background .28s var(--so-2090-ease), box-shadow .28s var(--so-2090-ease), transform .28s var(--so-2090-ease);
}
#swap-os-app .swap-os-stat-card:hover,
#swap-os-app .swap-os-panel:hover {
  border-color: rgba(155,117,255,.24);
  background: linear-gradient(145deg,rgba(22,19,35,.91),rgba(7,8,15,.91));
  box-shadow: 0 22px 56px rgba(0,0,0,.34), 0 0 28px rgba(108,60,255,.055), inset 0 1px 0 rgba(255,255,255,.045);
  transform: translateY(-2px);
}
#swap-os-app .swap-os-stat-icon { box-shadow: inset 0 1px 0 rgba(255,255,255,.12); }
#swap-os-app .swap-os-progress { background: rgba(255,255,255,.075); border-radius: 99px; }
#swap-os-app .swap-os-progress > span {
  border-radius: 99px;
  background: linear-gradient(90deg,#8e4dff,#00c6ff) !important;
  box-shadow: 0 0 12px rgba(0,198,255,.24);
}
#swap-os-app .swap-os-progress.green-progress > span { background: linear-gradient(90deg,#00e69a,#70ffe0) !important; box-shadow: 0 0 10px rgba(0,245,160,.2); }
#swap-os-app .swap-os-progress.amber-progress > span { background: linear-gradient(90deg,#ff9f43,#ffe18a) !important; box-shadow: 0 0 10px rgba(255,181,71,.18); }
#swap-os-app .swap-os-progress.violet-progress > span { background: linear-gradient(90deg,#8e4dff,#e18aff) !important; box-shadow: 0 0 10px rgba(189,92,255,.2); }
#swap-os-app .swap-os-primary-btn,
#swap-os-app .swap-os-ai-button,
#swap-os-app .swap-os-login-button {
  background: linear-gradient(105deg,#b34cff,#7447ff 48%,#287bff);
  color: #fff;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(110,53,255,.18), inset 0 1px 0 rgba(255,255,255,.18);
  transition: transform .2s var(--so-2090-ease), filter .2s var(--so-2090-ease), box-shadow .2s var(--so-2090-ease);
}
#swap-os-app .swap-os-primary-btn:hover,
#swap-os-app .swap-os-ai-button:hover,
#swap-os-app .swap-os-login-button:hover {
  filter: brightness(1.12);
  transform: translateY(-1px);
  box-shadow: 0 10px 30px rgba(110,53,255,.28), inset 0 1px 0 rgba(255,255,255,.22);
}
#swap-os-app .swap-os-ai-panel {
  border-color: rgba(143,89,255,.35);
  background: radial-gradient(ellipse at 50% 0%,rgba(99,37,255,.18),transparent 56%), linear-gradient(145deg,rgba(8,7,24,.97),rgba(4,5,15,.98));
  box-shadow: 0 0 36px rgba(104,54,255,.075), inset 0 1px 0 rgba(255,255,255,.055);
}
#swap-os-app .swap-os-modal {
  background: rgba(10,10,18,.96);
  border-color: rgba(174,128,255,.22);
  box-shadow: 0 28px 100px rgba(0,0,0,.68), 0 0 50px rgba(101,57,255,.08);
  backdrop-filter: blur(30px);
}
#swap-os-app input:focus, #swap-os-app select:focus, #swap-os-app textarea:focus {
  outline: none;
  border-color: rgba(0,198,255,.45);
  box-shadow: 0 0 0 3px rgba(0,198,255,.06);
}
#swap-os-app .swap-os-page-view { transform-origin: 50% 0; }
#swap-os-app .swap-os-page-view.is-active { will-change: opacity, transform, filter; }
#swap-os-app .swap-os-toast { background: rgba(15,15,27,.96); border-color: rgba(167,120,255,.25); backdrop-filter: blur(18px); }
#swap-os-app.swap-os-light {
  --so-bg: #f4f4f7;
  --so-sidebar: rgba(250,250,252,.96);
  --so-panel: rgba(255,255,255,.8);
  --so-panel-hover: rgba(255,255,255,.96);
  --so-border: rgba(20,20,30,.09);
  --so-border-glow: rgba(82,75,180,.24);
  --so-text: #17171c;
  --so-muted: #72727e;
  background: radial-gradient(ellipse at 70% 0%,rgba(170,132,255,.12),transparent 40%),var(--so-bg);
}
#swap-os-app.swap-os-light .swap-os-sidebar { background: rgba(250,250,252,.96); box-shadow: 8px 0 35px rgba(20,20,40,.04); }
#swap-os-app.swap-os-light .swap-os-topbar { background: rgba(250,250,252,.82); }
#swap-os-app.swap-os-light .swap-os-stat-card,
#swap-os-app.swap-os-light .swap-os-panel { background: rgba(255,255,255,.78); box-shadow: 0 12px 38px rgba(20,20,40,.055), inset 0 1px 0 rgba(255,255,255,.9); }
#swap-os-app.swap-os-light .swap-os-ai-panel { background: radial-gradient(ellipse at 50% 0%,rgba(147,89,255,.1),transparent 58%),rgba(255,255,255,.92); }
#swap-os-app.swap-os-light .swap-os-modal { background: rgba(255,255,255,.97); }
#swap-os-app.swap-os-light .swap-os-nav-link.active { color: #6736bd; background: linear-gradient(100deg,rgba(157,90,255,.12),rgba(0,145,210,.055)); border-color: rgba(126,76,210,.15); box-shadow: inset 2px 0 #8f54e9; }
#swap-os-app.swap-os-light h1 span { background: linear-gradient(100deg,#6736bd,#147ba5); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
@media (max-width: 780px) {
  #swap-os-app .swap-os-sidebar { box-shadow: 18px 0 70px rgba(0,0,0,.55); }
  #swap-os-app .swap-os-stat-card:hover, #swap-os-app .swap-os-panel:hover { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  #swap-os-app .swap-os-page-view, #swap-os-app .swap-os-nav-link,
  #swap-os-app .swap-os-stat-card, #swap-os-app .swap-os-panel,
  #swap-os-app .swap-os-primary-btn, #swap-os-app .swap-os-ai-button { transition: none !important; animation: none !important; }
}

/* SWAP OS 2090 · Command-center structural redesign */
#swap-os-app .swap-os-page-view[data-workspace="Dashboard"]{gap:18px;}
#swap-os-app .swap-os-page-view[data-workspace="Dashboard"] .swap-os-welcome-row{position:relative;overflow:hidden;padding:26px 28px;border:1px solid rgba(147,89,255,.22);border-radius:22px;background:radial-gradient(ellipse at 78% 20%,rgba(100,65,255,.22),transparent 34%),radial-gradient(ellipse at 92% 100%,rgba(0,198,255,.12),transparent 38%),linear-gradient(115deg,#080810,#0b0b18 58%,#090815);}
#swap-os-app .swap-os-page-view[data-workspace="Dashboard"] .swap-os-welcome-row:after{content:"";position:absolute;right:-50px;top:-110px;width:300px;height:300px;border:1px solid rgba(157,104,255,.14);border-radius:50%;box-shadow:0 0 0 28px rgba(157,104,255,.025),0 0 0 58px rgba(157,104,255,.02);pointer-events:none;}
#swap-os-app .swap-os-page-view[data-workspace="Dashboard"] .swap-os-welcome-row h1{font-size:clamp(26px,2.4vw,38px);line-height:1.1;margin:9px 0 10px;}
#swap-os-app .swap-os-page-view[data-workspace="Dashboard"] .swap-os-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
#swap-os-app .swap-os-page-view[data-workspace="Dashboard"] .swap-os-stat-card{padding:17px 18px;border-radius:17px;background:linear-gradient(145deg,rgba(18,18,30,.88),rgba(7,7,13,.92));box-shadow:inset 0 1px rgba(255,255,255,.035);}
#swap-os-app .swap-os-command-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(245px,.8fr) minmax(240px,.8fr);grid-template-areas:"hero hero calendar" "daily events calendar" "daily projects calendar" "focus quick quick";gap:14px;min-width:0;}
#swap-os-app .swap-os-command-card{position:relative;min-width:0;overflow:hidden;padding:21px;border-radius:19px;border:1px solid rgba(255,255,255,.075);background:linear-gradient(145deg,rgba(16,16,27,.88),rgba(5,5,11,.93));box-shadow:inset 0 1px rgba(255,255,255,.035),0 18px 40px rgba(0,0,0,.15);}
#swap-os-app .swap-os-command-hero{grid-area:hero;min-height:205px;display:flex;align-items:center;justify-content:space-between;background:radial-gradient(ellipse at 85% 45%,rgba(116,43,255,.23),transparent 38%),linear-gradient(120deg,#0b0a17,#0a0a14 60%,#080d1b);border-color:rgba(148,86,255,.25);}
#swap-os-app .swap-os-command-hero-copy{position:relative;z-index:2;max-width:480px;}
#swap-os-app .swap-os-command-hero h2{font-size:clamp(25px,2.2vw,34px);letter-spacing:-1.1px;margin:10px 0 8px;color:#fff;}
#swap-os-app .swap-os-command-hero h2 span,#swap-os-app .swap-os-command-focus h3 span{background:linear-gradient(90deg,#d9a3ff,#6c8cff,#62e5ff);background-clip:text;-webkit-background-clip:text;color:transparent;}
#swap-os-app .swap-os-command-hero p,#swap-os-app .swap-os-command-focus p{font-size:12px;line-height:1.7;color:#9b9bab;max-width:420px;margin:0 0 17px;}
#swap-os-app .swap-os-command-actions{display:flex;gap:9px;flex-wrap:wrap;}
#swap-os-app .swap-os-neural-orb{position:relative;flex:0 0 130px;width:130px;height:130px;border-radius:50%;display:grid;place-items:center;margin:0 18px 0 12px;background:radial-gradient(circle,rgba(117,55,255,.32),rgba(28,21,70,.25) 48%,transparent 69%);border:1px solid rgba(153,111,255,.52);box-shadow:0 0 25px rgba(119,63,255,.2),inset 0 0 25px rgba(0,198,255,.1);}
#swap-os-app .swap-os-neural-orb:before,#swap-os-app .swap-os-neural-orb:after{content:"";position:absolute;inset:10px;border:1px solid rgba(0,198,255,.48);border-radius:50%;transform:rotateX(65deg) rotate(22deg);}
#swap-os-app .swap-os-neural-orb:after{inset:22px;border-color:rgba(191,85,255,.6);transform:rotateY(65deg) rotate(-28deg);}
#swap-os-app .swap-os-neural-orb span{width:35px;height:35px;border-radius:50%;background:linear-gradient(135deg,#e4c9ff,#8b4bff 55%,#39d7ff);box-shadow:0 0 28px #874cff,0 0 48px rgba(0,198,255,.3);}
#swap-os-app .swap-os-neural-orb i,#swap-os-app .swap-os-neural-orb b{position:absolute;width:6px;height:6px;border-radius:50%;background:#7ae7ff;box-shadow:0 0 12px #5cdfff;top:8px;right:25px;}
#swap-os-app .swap-os-neural-orb b{top:auto;right:auto;bottom:15px;left:23px;background:#d28cff;}
#swap-os-app .swap-os-command-coordinate{position:absolute;bottom:14px;right:18px;font:9px/1.4 ui-monospace,monospace;letter-spacing:.12em;color:#66677e;display:flex;gap:12px;}
#swap-os-app .swap-os-command-coordinate span{color:#69dcb2;}
#swap-os-app .swap-os-command-events{grid-area:events;}
#swap-os-app .swap-os-command-calendar{grid-area:calendar;}
#swap-os-app .swap-os-command-projects{grid-area:projects;}
#swap-os-app .swap-os-command-focus{grid-area:focus;background:radial-gradient(ellipse at 90% 0%,rgba(120,57,255,.2),transparent 42%),linear-gradient(145deg,#111020,#08080f);}
#swap-os-app .swap-os-command-quick{grid-area:quick;}
#swap-os-app .swap-os-command-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px;}
#swap-os-app .swap-os-command-card-head h3,#swap-os-app .swap-os-command-focus h3{font-size:15px;letter-spacing:-.3px;margin:5px 0 0;color:#f4f4fb;}
#swap-os-app .swap-os-command-card .swap-os-panel-kicker{font-size:9px;letter-spacing:.13em;color:#7f8199;}
#swap-os-app .swap-os-round-link{width:30px;height:30px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(255,255,255,.035);color:#b9a0ff;cursor:pointer;}
#swap-os-app .swap-os-dash-event{display:flex;align-items:center;gap:11px;width:100%;padding:10px 0;border:0;border-bottom:1px solid rgba(255,255,255,.055);background:transparent;text-align:left;color:inherit;cursor:pointer;}
#swap-os-app .swap-os-dash-event:last-child{border-bottom:0;}
#swap-os-app .swap-os-dash-event-date{width:39px;flex:0 0 39px;height:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:11px;background:rgba(133,76,255,.12);border:1px solid rgba(153,105,255,.15);}
#swap-os-app .swap-os-dash-event-date b{font-size:15px;color:#f4edff;line-height:1.1;}
#swap-os-app .swap-os-dash-event-date small{font-size:9px;text-transform:uppercase;color:#b99aff;margin-top:3px;}
#swap-os-app .swap-os-dash-event-copy{display:grid;gap:5px;min-width:0;flex:1;}
#swap-os-app .swap-os-dash-event-copy b{font-size:11px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#swap-os-app .swap-os-dash-event-copy small{font-size:10px;color:#81839a;}
#swap-os-app .swap-os-dash-event-arrow{color:#6f7190;}
#swap-os-app .swap-os-mini-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;}
#swap-os-app .swap-os-mini-weekday{font-size:9px;color:#777b92;text-align:center;padding:6px 0;}
#swap-os-app .swap-os-mini-day{position:relative;min-width:0;aspect-ratio:1;border:1px solid transparent;border-radius:9px;display:grid;place-items:center;background:transparent;color:#c5c6d4;font-size:10px;cursor:pointer;}
#swap-os-app .swap-os-mini-day.is-blank{pointer-events:none;}
#swap-os-app .swap-os-mini-day:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.1);}
#swap-os-app .swap-os-mini-day.is-today{background:linear-gradient(135deg,#a84cff,#5b46ff);color:white;box-shadow:0 0 16px rgba(132,68,255,.25);}
#swap-os-app .swap-os-mini-day.has-event:not(.is-today):after{content:"";position:absolute;bottom:3px;width:3px;height:3px;border-radius:50%;background:#4dd9ff;box-shadow:0 0 5px #4dd9ff;}
#swap-os-app .swap-os-card-footnote{font-size:10px;line-height:1.5;color:#6e7187;margin:13px 0 0;}
#swap-os-app .swap-os-dash-project{display:flex;align-items:center;gap:10px;width:100%;padding:10px 0;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.055);text-align:left;color:inherit;cursor:pointer;}
#swap-os-app .swap-os-dash-project:last-child{border-bottom:0;}
#swap-os-app .swap-os-dash-project-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;font-size:11px;font-weight:700;flex:0 0 30px;}
#swap-os-app .swap-os-dash-project-icon.tone-0{background:rgba(93,115,255,.16);color:#8eacff;}.swap-os-dash-project-icon.tone-1{background:rgba(180,86,255,.16);color:#d0a0ff;}.swap-os-dash-project-icon.tone-2{background:rgba(0,217,180,.13);color:#62e8c9;}
#swap-os-app .swap-os-dash-project-main{display:grid;gap:7px;min-width:0;flex:1;}
#swap-os-app .swap-os-dash-project-main b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#swap-os-app .swap-os-dash-project-track{height:3px;border-radius:9px;background:rgba(255,255,255,.08);overflow:hidden;}
#swap-os-app .swap-os-dash-project-track i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,#8c4cff,#38d5ff);}
#swap-os-app .swap-os-dash-project strong{font-size:10px;color:#a9adc5;font-weight:600;}
#swap-os-app .swap-os-dashboard-empty{font-size:11px;line-height:1.8;color:#85869c;padding:8px 0;}
#swap-os-app .swap-os-dashboard-empty button{padding:0;border:0;background:none;color:#bca0ff;cursor:pointer;font-size:11px;}
#swap-os-app .swap-os-focus-orb{width:43px;height:43px;display:grid;place-items:center;margin:14px 0 11px;border-radius:15px;background:linear-gradient(135deg,#a64cff,#513cff);color:white;font-size:22px;box-shadow:0 0 24px rgba(138,66,255,.28);}
#swap-os-app .swap-os-command-focus h3{font-size:18px;margin-bottom:7px;}
#swap-os-app .swap-os-focus-button{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;border:1px solid rgba(159,103,255,.25);border-radius:11px;padding:11px 13px;background:rgba(129,74,255,.12);color:#e7dcff;font-size:11px;font-weight:650;cursor:pointer;}
#swap-os-app .swap-os-command-focus>small{display:block;margin-top:10px;color:#65677e;font-size:9px;line-height:1.5;}
#swap-os-app .swap-os-quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
#swap-os-app .swap-os-quick-actions button{display:grid;justify-items:start;gap:7px;padding:12px;border:1px solid rgba(255,255,255,.06);border-radius:13px;background:rgba(255,255,255,.025);color:#e6e6f0;text-align:left;cursor:pointer;}
#swap-os-app .swap-os-quick-actions button:hover{transform:translateY(-2px);border-color:rgba(153,105,255,.3);background:rgba(134,77,255,.07);}
#swap-os-app .swap-os-quick-actions b{font-size:11px;}
#swap-os-app .swap-os-quick-actions small{font-size:9px;color:#777b91;}
#swap-os-app .swap-os-quick-actions .quick-glyph{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;font-size:16px;}
#swap-os-app .quick-glyph.violet{background:rgba(172,82,255,.16);color:#c99aff;}#swap-os-app .quick-glyph.blue{background:rgba(72,122,255,.16);color:#83aaff;}#swap-os-app .quick-glyph.cyan{background:rgba(0,203,255,.13);color:#65dcff;}#swap-os-app .quick-glyph.amber{background:rgba(255,172,61,.13);color:#ffc36c;}
#swap-os-app .swap-os-command-card button:focus-visible{outline:2px solid #8b72ff;outline-offset:3px;}
#swap-os-app.swap-os-light .swap-os-command-card{background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(244,244,250,.96));border-color:rgba(0,0,0,.08);box-shadow:0 12px 30px rgba(25,20,50,.06);}
#swap-os-app.swap-os-light .swap-os-command-hero{background:radial-gradient(ellipse at 85% 45%,rgba(116,43,255,.12),transparent 38%),linear-gradient(120deg,#fff,#f4f1ff 60%,#edfaff);}
#swap-os-app.swap-os-light .swap-os-command-card-head h3,#swap-os-app.swap-os-light .swap-os-command-focus h3,#swap-os-app.swap-os-light .swap-os-quick-actions b,#swap-os-app.swap-os-light .swap-os-dash-event-copy b{color:#171722;}
#swap-os-app.swap-os-light .swap-os-command-hero h2{color:#171722;}
#swap-os-app.swap-os-light .swap-os-command-hero p,#swap-os-app.swap-os-light .swap-os-command-focus p{color:#626274;}
#swap-os-app.swap-os-light .swap-os-dash-event-copy small,#swap-os-app.swap-os-light .swap-os-dash-project strong{color:#737387;}
@media(max-width:1180px){#swap-os-app .swap-os-command-grid{grid-template-columns:minmax(0,1fr) minmax(240px,.8fr);grid-template-areas:"hero hero" "events calendar" "projects calendar" "focus quick";}#swap-os-app .swap-os-page-view[data-workspace="Dashboard"] .swap-os-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:760px){#swap-os-app .swap-os-command-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"hero" "events" "calendar" "projects" "focus" "quick";}#swap-os-app .swap-os-command-hero{min-height:220px;padding:19px;}#swap-os-app .swap-os-neural-orb{width:75px;height:75px;flex-basis:75px;margin:0 0 22px 5px;}#swap-os-app .swap-os-neural-orb span{width:23px;height:23px;}#swap-os-app .swap-os-command-coordinate{font-size:8px;}#swap-os-app .swap-os-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));}#swap-os-app .swap-os-page-view[data-workspace="Dashboard"] .swap-os-welcome-row{padding:20px;} }
@media(max-width:480px){#swap-os-app .swap-os-command-card{padding:16px;border-radius:15px;}#swap-os-app .swap-os-command-hero h2{font-size:25px;}#swap-os-app .swap-os-command-hero p{max-width:270px;}#swap-os-app .swap-os-neural-orb{display:none;}#swap-os-app .swap-os-page-view[data-workspace="Dashboard"] .swap-os-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-command-card,#swap-os-app .swap-os-command-card *{transition:none!important;animation:none!important;}}


/* SWAP OS 3.48.0 — mobile-first 2090 command-center experience.
   Primary target: phones; tablet and desktop progressively enhance the same workspace. */
#swap-os-app {
  --so-bg: #050509; --so-sidebar: #08080d; --so-panel: rgba(17,17,25,.76);
  --so-border: rgba(255,255,255,.085); --so-text: #f7f7fb; --so-muted: #9293a6;
  --so-blue: #54c8ff; --so-violet: #a855f7; --so-green: #34e6b0; --so-amber: #ffbd55;
  font-family: -apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;
  background: radial-gradient(ellipse at 70% -15%,rgba(91,35,190,.19),transparent 42%),var(--so-bg);
  color: var(--so-text); border: 1px solid rgba(255,255,255,.055); border-radius: 20px;
}
#swap-os-app .swap-os-sidebar { background: rgba(7,7,13,.96); border-right-color:var(--so-border); }
#swap-os-app .swap-os-brand-mark { background:linear-gradient(135deg,#d8b4fe,#7c3aed 58%,#3b82f6); box-shadow:0 0 24px rgba(168,85,247,.25); }
#swap-os-app .swap-os-nav-link { min-height:43px; border-radius:11px; font-size:12px; }
#swap-os-app .swap-os-nav-link.active { color:#fff; background:linear-gradient(100deg,rgba(124,58,237,.3),rgba(59,130,246,.1)); box-shadow:inset 0 0 0 1px rgba(168,85,247,.32),0 0 22px rgba(124,58,237,.08); }
#swap-os-app .swap-os-topbar { background:rgba(5,5,9,.78); border-bottom-color:var(--so-border); backdrop-filter:blur(24px) saturate(160%); -webkit-backdrop-filter:blur(24px) saturate(160%); }
#swap-os-app .swap-os-search { border-radius:12px; background:rgba(255,255,255,.045); }
#swap-os-app .swap-os-stat-card,#swap-os-app .swap-os-panel { background:linear-gradient(145deg,rgba(22,22,33,.9),rgba(9,9,16,.88)); border-color:var(--so-border); border-radius:17px; box-shadow:inset 0 1px rgba(255,255,255,.035),0 16px 38px rgba(0,0,0,.16); }
#swap-os-app .swap-os-primary-btn { border-radius:12px; background:linear-gradient(110deg,#a855f7,#6d28d9); color:#fff; box-shadow:0 5px 22px rgba(124,58,237,.2); }
#swap-os-app .swap-os-icon-btn { border-radius:11px; min-width:42px; min-height:42px; }
#swap-os-app .swap-os-content { padding:22px clamp(12px,2.1vw,28px) 28px; }
#swap-os-app .swap-os-page-view.is-active,#swap-os-app .swap-os-page-view .swap-os-panel { min-width:0; }
#swap-os-app .swap-os-mobile-dock { display:none; }
#swap-os-app .swap-os-page-view[hidden] { display:none!important; }
#swap-os-app button,#swap-os-app a,#swap-os-app input,#swap-os-app select,#swap-os-app textarea { -webkit-tap-highlight-color:transparent; }
#swap-os-app button:focus-visible,#swap-os-app a:focus-visible,#swap-os-app input:focus-visible,#swap-os-app select:focus-visible,#swap-os-app textarea:focus-visible { outline:2px solid #a855f7; outline-offset:3px; }

/* Tablet: reclaim width without shrinking touch controls. */
@media (min-width:781px) and (max-width:1100px) {
 #swap-os-app .swap-os-sidebar { flex-basis:190px; width:190px; padding-inline:10px; }
 #swap-os-app .swap-os-content { padding:20px 15px 24px; }
 #swap-os-app .swap-os-dashboard-grid { grid-template-columns:minmax(0,1fr); }
 #swap-os-app .swap-os-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #swap-os-app .swap-os-search { width:min(38vw,300px); }
}

/* Phone-first: drawer navigation, thumb-zone dock, stacked content, safe areas. */
@media (max-width:780px) {
 #swap-os-app { display:block; width:100%; min-height:100dvh; min-height:100vh; border:0; border-radius:0; overflow:clip; padding-bottom:calc(76px + env(safe-area-inset-bottom,0px)); }
 #swap-os-app .swap-os-sidebar { position:fixed; z-index:1002; top:0; bottom:0; left:0; width:min(304px,86vw); height:100dvh; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:calc(18px + env(safe-area-inset-top,0px)) 14px calc(22px + env(safe-area-inset-bottom,0px)); transform:translateX(-110%); visibility:hidden; transition:transform .26s cubic-bezier(.2,.8,.2,1),visibility .26s; box-shadow:24px 0 70px rgba(0,0,0,.55); }
 #swap-os-app .swap-os-sidebar.open { transform:translateX(0); visibility:visible; }
 #swap-os-app .swap-os-brand { padding-bottom:20px; }
 #swap-os-app .swap-os-mobile-menu { display:grid; flex:0 0 42px; }
 #swap-os-app .swap-os-main { width:100%; min-width:0; }
 #swap-os-app .swap-os-topbar { position:sticky; top:0; z-index:50; height:62px; padding:0 12px; gap:8px; justify-content:flex-start; }
 #swap-os-app .swap-os-breadcrumbs { min-width:0; flex:1; gap:6px; font-size:11px; }
 #swap-os-app .swap-os-breadcrumbs span:first-child,#swap-os-app .swap-os-crumb-sep { display:none; }
 #swap-os-app .swap-os-top-actions { gap:6px; }
 #swap-os-app .swap-os-top-actions .swap-os-search { width:clamp(108px,34vw,220px); height:40px; padding:0 9px; }
 #swap-os-app .swap-os-search input { font-size:12px; }
 #swap-os-app .swap-os-search kbd { display:none; }
 #swap-os-app .swap-os-top-actions .swap-os-icon-btn { min-width:40px; min-height:40px; }
 #swap-os-app .swap-os-top-avatar { display:none; }
 #swap-os-app .swap-os-content { padding:14px 12px 22px; }
 #swap-os-app .swap-os-page-view.is-active,#swap-os-app .swap-os-page-view[data-workspace="Dashboard"] { gap:12px; }
 #swap-os-app .swap-os-welcome-row { align-items:flex-start; flex-direction:column; gap:12px; margin-bottom:0; padding:20px 16px; border:1px solid rgba(168,85,247,.22); border-radius:20px; background:radial-gradient(ellipse at 80% 0%,rgba(124,58,237,.22),transparent 55%),linear-gradient(145deg,rgba(24,17,43,.9),rgba(8,8,14,.95)); }
 #swap-os-app .swap-os-welcome-row h1 { font-size:clamp(26px,7vw,34px); line-height:1.08; letter-spacing:-1.1px; }
 #swap-os-app .swap-os-subheading { font-size:13px; line-height:1.5; }
 #swap-os-app .swap-os-date-pill { max-width:100%; white-space:normal; flex-wrap:wrap; font-size:11px; padding:10px 12px; }
 #swap-os-app .swap-os-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin-bottom:0; }
 #swap-os-app .swap-os-stat-card { padding:13px 12px; border-radius:15px; }
 #swap-os-app .swap-os-stat-top { margin-bottom:9px; }
 #swap-os-app .swap-os-stat-icon { width:34px; height:34px; }
 #swap-os-app .swap-os-stat-label { font-size:11px; }
 #swap-os-app .swap-os-stat-value { font-size:clamp(19px,5.2vw,25px); overflow-wrap:anywhere; margin-bottom:9px; }
 #swap-os-app .swap-os-stat-foot { font-size:10px; line-height:1.4; }
 #swap-os-app .swap-os-dashboard-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
 #swap-os-app .swap-os-panel { padding:15px; border-radius:17px; }
 #swap-os-app .swap-os-panel-head { margin-bottom:12px; }
 #swap-os-app h2 { font-size:16px; }
 #swap-os-app .swap-os-page-view[data-workspace="Dashboard"] .swap-os-ai-panel { max-width:none; width:100%; }
 #swap-os-app .swap-os-ai-panel { order:-1; }
 #swap-os-app .swap-os-page-view .swap-os-tasks-panel { min-height:0; }
 #swap-os-app .swap-os-module-heading { align-items:flex-start; flex-direction:column; gap:6px; margin:0 0 4px; padding:8px 2px 13px; }
 #swap-os-app .swap-os-module-heading h1 { font-size:26px; }
 #swap-os-app .swap-os-module-heading p { font-size:12px; line-height:1.5; }
 #swap-os-app .swap-os-task-metrics,#swap-os-app .swap-os-finance-workspace-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #swap-os-app .swap-os-task-toolbar,#swap-os-app .swap-os-finance-toolbar { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 #swap-os-app .swap-os-task-toolbar input { grid-column:1/-1; }
 #swap-os-app .swap-os-projects-workspace-grid { grid-template-columns:minmax(0,1fr); }
 #swap-os-app .swap-os-calendar-toolbar { align-items:stretch; flex-direction:column; }
 #swap-os-app .swap-os-calendar-month-nav { justify-content:space-between; }
 #swap-os-app .swap-os-calendar-grid { gap:3px; }
 #swap-os-app .swap-os-calendar-weekday { padding:5px 0; font-size:9px; letter-spacing:0; }
 #swap-os-app .swap-os-calendar-day-cell { min-height:48px; padding:5px 2px; border-radius:8px; gap:4px; align-items:center; }
 #swap-os-app .swap-os-calendar-day-number { font-size:11px; }
 #swap-os-app .swap-os-calendar-day-events { flex-direction:row; justify-content:center; width:100%; }
 #swap-os-app .swap-os-calendar-day-events i { width:5px; height:5px; padding:0; border:0; border-radius:50%; font-size:0; background:#a855f7; }
 #swap-os-app .swap-os-calendar-day-events small { display:none; }
 #swap-os-app .swap-os-report-table-wrap { max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
 #swap-os-app .swap-os-report-table { min-width:560px; }
 #swap-os-app .swap-os-form-grid { grid-template-columns:minmax(0,1fr); }
 #swap-os-app .swap-os-modal-backdrop { align-items:flex-end; padding:0; }
 #swap-os-app .swap-os-modal { width:100%; max-width:none; max-height:90dvh; overflow:auto; border-radius:22px 22px 0 0; padding:24px 18px calc(22px + env(safe-area-inset-bottom,0px)); }
 #swap-os-app .swap-os-mobile-dock { position:fixed; z-index:1000; left:10px; right:10px; bottom:calc(8px + env(safe-area-inset-bottom,0px)); display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:3px; padding:7px 5px; border:1px solid rgba(255,255,255,.13); border-radius:20px; background:rgba(12,11,20,.88); box-shadow:0 12px 45px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.06); backdrop-filter:blur(28px) saturate(180%); -webkit-backdrop-filter:blur(28px) saturate(180%); }
 #swap-os-app .swap-os-dock-item { min-width:0; min-height:50px; padding:5px 2px 4px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; border:0; border-radius:13px; color:#a3a1b7; background:transparent; }
 #swap-os-app .swap-os-dock-glyph { font-size:21px; line-height:1.1; }
 #swap-os-app .swap-os-dock-label { font-size:9px; line-height:1.1; font-weight:600; }
 #swap-os-app .swap-os-dock-item.active { color:#fff; background:linear-gradient(145deg,rgba(168,85,247,.28),rgba(59,130,246,.12)); box-shadow:inset 0 0 0 1px rgba(168,85,247,.3); }
 #swap-os-app .swap-os-dock-item.active .swap-os-dock-glyph { color:#d8b4fe; text-shadow:0 0 14px rgba(168,85,247,.7); }
 #swap-os-app .swap-os-footer { padding-bottom:8px; }
}
@media (max-width:380px) {
 #swap-os-app .swap-os-topbar { padding-inline:8px; }
 #swap-os-app .swap-os-top-actions .swap-os-search { width:clamp(90px,29vw,130px); }
 #swap-os-app .swap-os-content { padding-inline:9px; }
 #swap-os-app .swap-os-panel { padding:12px; }
 #swap-os-app .swap-os-stat-card { padding:11px 9px; }
 #swap-os-app .swap-os-dock-label { font-size:8px; }
}
@media (prefers-reduced-motion:reduce) {
 #swap-os-app .swap-os-sidebar,#swap-os-app .swap-os-mobile-dock,#swap-os-app .swap-os-dock-item { transition:none!important; }
}


/* SWAP OS 3.49.0 — mobile interaction QA and accessible navigation drawer. */
#swap-os-app .swap-os-sidebar-backdrop { display:none; }
@media (max-width:780px) {
  #swap-os-app .swap-os-sidebar-backdrop {
    display:block; position:fixed; z-index:1001; inset:0; width:100%; height:100%;
    margin:0; padding:0; border:0; border-radius:0; background:rgba(1,2,9,.68);
    opacity:0; visibility:hidden; pointer-events:none; backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px); transition:opacity .22s ease,visibility .22s ease;
  }
  #swap-os-app.swap-os-sidebar-open .swap-os-sidebar-backdrop { opacity:1; visibility:visible; pointer-events:auto; }
  #swap-os-app .swap-os-sidebar { z-index:1002; }
  #swap-os-app .swap-os-mobile-dock { z-index:1000; }
  #swap-os-app button,#swap-os-app a { touch-action:manipulation; }
  #swap-os-app .swap-os-nav-link { min-height:44px; }
  #swap-os-app input:not([type="checkbox"]):not([type="radio"]),
  #swap-os-app select { min-height:44px; font-size:16px; }
  #swap-os-app textarea { font-size:16px; }
  #swap-os-app .swap-os-page-view,
  #swap-os-app .swap-os-page-view > *,
  #swap-os-app .swap-os-panel,
  #swap-os-app .swap-os-stat-card { min-width:0; max-width:100%; }
  #swap-os-app .swap-os-content { overflow-wrap:anywhere; }
  #swap-os-app .swap-os-dock-item { min-height:52px; }
  body.swap-os-drawer-open { overflow:hidden; }
}
@media (max-width:380px) {
  #swap-os-app .swap-os-mobile-dock { left:6px; right:6px; padding-inline:3px; }
  #swap-os-app .swap-os-dock-item { min-height:50px; }
  #swap-os-app .swap-os-dock-label { letter-spacing:-.02em; }
}
@media (prefers-reduced-motion:reduce) {
  #swap-os-app .swap-os-sidebar-backdrop { transition:none!important; }
}


/* SWAP OS 3.50.0 — mobile-first interaction and overflow hardening. */
#swap-os-app .swap-os-page-view,
#swap-os-app .swap-os-page-view > *,
#swap-os-app .swap-os-panel,
#swap-os-app .swap-os-stat-card { min-width: 0; }
#swap-os-app .swap-os-dock-item { touch-action: manipulation; }
#swap-os-app .swap-os-dock-item:focus-visible { outline: 2px solid #c084fc; outline-offset: 2px; }
@media (max-width: 780px) {
  #swap-os-app { width: 100%; max-width: 100%; }
  #swap-os-app .swap-os-topbar,
  #swap-os-app .swap-os-content { max-width: 100%; }
  #swap-os-app .swap-os-page-view { overflow-wrap: anywhere; }
  #swap-os-app .swap-os-mobile-dock { padding-bottom: max(7px, env(safe-area-inset-bottom, 0px)); }
  #swap-os-app .swap-os-dock-item { min-width: 0; min-height: 52px; }
  #swap-os-app .swap-os-dock-label { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  #swap-os-app .swap-os-sidebar { overscroll-behavior-y: contain; }
}
@media (max-width: 360px) {
  #swap-os-app .swap-os-top-actions .swap-os-search { width: 88px; }
  #swap-os-app .swap-os-top-actions { gap: 4px; }
  #swap-os-app .swap-os-mobile-dock { left: 4px; right: 4px; }
  #swap-os-app .swap-os-dock-glyph { font-size: 19px; }
}
@media (prefers-reduced-motion: reduce) {
  #swap-os-app .swap-os-dock-item { scroll-behavior: auto; }
}


/* SWAP OS 3.51.0 — practical browser voice shortcuts, optimized for touch. */
#swap-os-app .swap-os-focus-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:14px;}
#swap-os-app .swap-os-focus-actions .swap-os-focus-button{margin-top:0;}
#swap-os-app .swap-os-voice-button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 14px;border:1px solid rgba(168,85,247,.38);border-radius:13px;background:linear-gradient(120deg,rgba(168,85,247,.14),rgba(56,189,248,.08));color:#eee8ff;font-family:inherit;font-size:12px;font-weight:600;line-height:1.3;cursor:pointer;touch-action:manipulation;}
#swap-os-app .swap-os-voice-button span{font-size:20px;color:#c4a0ff;}
#swap-os-app .swap-os-voice-button:hover,#swap-os-app .swap-os-voice-button:focus-visible{border-color:rgba(168,85,247,.8);box-shadow:0 0 22px rgba(168,85,247,.16);outline-offset:3px;}
#swap-os-app .swap-os-voice-button.is-listening{border-color:#45e6c1;background:rgba(52,230,176,.12);color:#b8ffe9;animation:swapOsVoicePulse 1.3s ease-in-out infinite;}
#swap-os-app .swap-os-voice-status{min-height:2.6em;margin:8px 0 0;color:#aaa7c3;font-size:11px;line-height:1.5;overflow-wrap:anywhere;}
#swap-os-app.swap-os-light .swap-os-voice-button{color:#31264b;background:linear-gradient(120deg,rgba(168,85,247,.09),rgba(56,189,248,.08));}
#swap-os-app.swap-os-light .swap-os-voice-status{color:#626274;}
@keyframes swapOsVoicePulse{0%,100%{box-shadow:0 0 0 rgba(52,230,176,0)}50%{box-shadow:0 0 20px rgba(52,230,176,.18)}}
@media(max-width:780px){#swap-os-app .swap-os-focus-actions{grid-template-columns:1fr 1fr;}#swap-os-app .swap-os-voice-button{min-height:48px;font-size:12px;}#swap-os-app .swap-os-command-focus>small{font-size:10px;}}
@media(max-width:380px){#swap-os-app .swap-os-focus-actions{grid-template-columns:1fr;}#swap-os-app .swap-os-voice-button{width:100%;}}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-voice-button.is-listening{animation:none;}}


/* Scheduled reminder controls — mobile-first */
#swap-os-app .swap-os-reminder-setting{display:inline-flex;align-items:center;gap:7px;color:var(--so-muted,#999);font-size:12px;}
#swap-os-app .swap-os-reminder-setting select{max-width:132px;min-height:38px;padding:8px 10px;border:1px solid var(--so-border,rgba(255,255,255,.12));border-radius:10px;background:var(--so-panel,rgba(20,20,24,.8));color:var(--so-text,#fff);font:inherit;}
@media(max-width:600px){#swap-os-app .swap-os-calendar-actions{flex-wrap:wrap;gap:8px}#swap-os-app .swap-os-reminder-setting{width:100%;justify-content:space-between}#swap-os-app .swap-os-reminder-setting select{flex:1;max-width:none}}


/* v3.56.0 — mobile-first background reminder preferences */
#swap-os-app .swap-os-reminder-settings{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;margin:16px 0;padding:20px;border:1px solid var(--so-border,rgba(255,255,255,.1));border-radius:20px;background:linear-gradient(145deg,rgba(120,80,190,.10),rgba(20,22,32,.62));backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
#swap-os-app .swap-os-reminder-settings[hidden]{display:none}
#swap-os-app .swap-os-reminder-settings-copy h3{margin:5px 0 6px;font-size:18px;letter-spacing:-.03em}
#swap-os-app .swap-os-reminder-settings-copy p{margin:0;max-width:680px;color:var(--so-muted,#999);font-size:13px;line-height:1.55}
#swap-os-app .swap-os-reminder-email-toggle{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600}
#swap-os-app .swap-os-reminder-email-toggle input{width:20px;height:20px;accent-color:#a855f7}
#swap-os-app .swap-os-reminder-settings .swap-os-reminder-setting{display:flex;align-items:center;gap:10px;justify-content:space-between}
#swap-os-app .swap-os-reminder-settings .swap-os-reminder-setting select{min-height:42px;min-width:170px;padding:9px 12px;border-radius:12px;background:var(--so-panel,rgba(20,20,24,.8));color:var(--so-text,#fff);border:1px solid var(--so-border,rgba(255,255,255,.12));font:inherit}
#swap-os-app .swap-os-reminder-settings-footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--so-border,rgba(255,255,255,.1));padding-top:14px;font-size:12px;color:var(--so-muted,#999)}
#swap-os-app #swapOsReminderSettingsStatus.is-error{color:#ff8585}
#swap-os-app #swapOsReminderSettingsSave:disabled{opacity:.6;cursor:wait}
@media(max-width:680px){#swap-os-app .swap-os-reminder-settings{grid-template-columns:1fr;padding:16px;gap:14px;border-radius:16px}#swap-os-app .swap-os-reminder-settings .swap-os-reminder-setting{align-items:stretch;flex-direction:column}#swap-os-app .swap-os-reminder-settings .swap-os-reminder-setting select{width:100%;min-width:0;min-height:46px}#swap-os-app .swap-os-reminder-settings-footer{align-items:stretch;flex-direction:column}#swap-os-app .swap-os-reminder-settings-footer .swap-os-primary-btn{width:100%;min-height:46px}#swap-os-app .swap-os-reminder-email-toggle{min-height:44px}}

/* v3.78.0 — global responsive shell, sticky navigation, multi-stage sidebar */
#swap-os-app{width:100%;max-width:100%;min-width:0;min-height:100vh;margin:0;border-radius:0;overflow:clip;align-items:stretch;--so-glass:rgba(15,22,37,.82)}
#swap-os-app .swap-os-sidebar{position:sticky;top:0;align-self:flex-start;flex:0 0 248px;width:248px;height:100vh;min-height:0;max-height:100vh;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;z-index:30;padding:20px 12px max(14px,env(safe-area-inset-bottom));background:var(--so-sidebar);backdrop-filter:saturate(150%) blur(24px);-webkit-backdrop-filter:saturate(150%) blur(24px);transition:width .24s ease,flex-basis .24s ease,transform .24s ease}
#swap-os-app .swap-os-main{min-width:0;min-height:100vh;flex:1 1 auto;overflow:visible}
#swap-os-app .swap-os-topbar{position:sticky;top:0;z-index:25;min-height:68px;padding-top:10px;padding-bottom:10px;background:var(--so-glass);backdrop-filter:saturate(160%) blur(24px);-webkit-backdrop-filter:saturate(160%) blur(24px);border-bottom:1px solid var(--so-border)}
#swap-os-app .swap-os-content{width:100%;max-width:1600px;margin-inline:auto;min-width:0;padding:clamp(16px,2.2vw,34px)}
#swap-os-app .swap-os-brand{position:relative;padding-right:38px}
#swap-os-app .swap-os-sidebar-collapse{position:absolute;right:0;top:1px;display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--so-border);border-radius:10px;background:rgba(255,255,255,.04);color:var(--so-text);font-size:16px;cursor:pointer}
#swap-os-app .swap-os-sidebar-collapse:hover,#swap-os-app .swap-os-sidebar-collapse:focus-visible{border-color:var(--so-blue);outline-offset:2px}
#swap-os-app .swap-os-nav-label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 8px 7px;padding:5px 0;color:var(--so-muted);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;user-select:none}
#swap-os-app .swap-os-nav-stage-toggle{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border:0;border-radius:7px;background:transparent;color:var(--so-muted);font-size:14px;cursor:pointer;transition:transform .18s ease,background .18s ease}
#swap-os-app .swap-os-nav-stage-toggle:hover{background:rgba(255,255,255,.07);color:var(--so-text)}
#swap-os-app .swap-os-nav-label[aria-expanded="false"] .swap-os-nav-stage-toggle{transform:rotate(-90deg)}
#swap-os-app .swap-os-nav-label[aria-expanded="false"]+.swap-os-nav{display:none}
#swap-os-app .swap-os-nav-link{min-height:42px;border-radius:12px;transition:background .18s ease,border-color .18s ease,transform .18s ease}
#swap-os-app .swap-os-nav-link:focus-visible{outline:2px solid var(--so-blue);outline-offset:2px}
#swap-os-app .swap-os-sidebar-spacer{min-height:18px;flex:1 0 18px}
#swap-os-app .swap-os-sidebar-backdrop{z-index:29}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-sidebar{flex-basis:76px;width:76px;padding-inline:10px}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-brand{justify-content:center;padding:0 0 22px}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-brand-copy,
#swap-os-app.swap-os-sidebar-collapsed .swap-os-workspace>span:not(:first-child),
#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-label,
#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link:not(.active) kbd,
#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link{font-size:0}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-brand{padding-right:0}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-sidebar-collapse{right:-3px;top:40px;width:26px;height:26px;font-size:13px}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-workspace{justify-content:center;padding:10px 0}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav{display:flex!important;flex-direction:column;gap:6px}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link{justify-content:center;min-height:44px;padding:8px 0;gap:0}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link>span:first-child{font-size:18px;line-height:1}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-count{display:none}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-ai-promo{justify-content:center;padding:10px 0}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-ai-promo>span:not(:first-child),
#swap-os-app.swap-os-sidebar-collapsed .swap-os-profile>span,
#swap-os-app.swap-os-sidebar-collapsed .swap-os-profile .swap-os-logout{display:none}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-profile{justify-content:center;padding:12px 0}
#swap-os-app .swap-os-top-actions{min-width:0}
#swap-os-app .swap-os-search{min-width:0}
@media(max-width:1100px){#swap-os-app .swap-os-sidebar{flex-basis:220px;width:220px}#swap-os-app .swap-os-content{padding:20px}}
@media(max-width:780px){
 #swap-os-app{min-height:100dvh;overflow:clip}
 #swap-os-app .swap-os-sidebar{position:fixed;top:0;left:0;bottom:0;width:min(86vw,320px);height:100dvh;max-height:100dvh;min-height:0;flex-basis:auto;transform:translateX(-105%);box-shadow:0 18px 60px rgba(0,0,0,.32);padding-top:max(18px,env(safe-area-inset-top));}
 #swap-os-app .swap-os-sidebar.open{transform:translateX(0)}
 #swap-os-app.swap-os-sidebar-collapsed .swap-os-sidebar{width:min(86vw,320px);flex-basis:auto;padding-inline:12px}
 #swap-os-app.swap-os-sidebar-collapsed .swap-os-brand{justify-content:flex-start;padding:0 38px 22px 7px}
 #swap-os-app.swap-os-sidebar-collapsed .swap-os-brand-copy{display:flex}
 #swap-os-app.swap-os-sidebar-collapsed .swap-os-workspace>span:not(:first-child),#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-label,#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link{font-size:inherit}
 #swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link{justify-content:flex-start;gap:10px;padding:9px 10px}
 #swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link>span:first-child{font-size:16px}
 #swap-os-app.swap-os-sidebar-collapsed .swap-os-ai-promo{justify-content:flex-start;padding:10px}
 #swap-os-app.swap-os-sidebar-collapsed .swap-os-ai-promo>span:not(:first-child),#swap-os-app.swap-os-sidebar-collapsed .swap-os-profile>span,#swap-os-app.swap-os-sidebar-collapsed .swap-os-profile .swap-os-logout{display:initial}
 #swap-os-app .swap-os-topbar{top:0;min-height:58px;padding:8px 12px}
 #swap-os-app .swap-os-content{padding:18px 13px max(24px,env(safe-area-inset-bottom))}
 #swap-os-app .swap-os-search kbd{display:none}
}
@media(max-width:480px){#swap-os-app .swap-os-breadcrumbs{font-size:12px}#swap-os-app .swap-os-top-actions{gap:6px}#swap-os-app .swap-os-search{max-width:42vw}#swap-os-app .swap-os-search input{width:100%;min-width:0}#swap-os-app .swap-os-content{padding-inline:11px}}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-sidebar,#swap-os-app .swap-os-nav-link,#swap-os-app .swap-os-nav-stage-toggle{transition:none}}


/* SWAP OS v3.79.0 — Finance-only navigation pilot: responsive, sticky, touch-friendly */
#swap-os-app .swap-os-finance-tabs{display:flex;align-items:center;gap:4px;max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding:7px;margin:0 0 18px;border:1px solid rgba(148,163,184,.22);border-radius:15px;background:rgba(250,251,253,.92);box-shadow:0 8px 24px rgba(15,23,42,.055);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);white-space:nowrap;position:sticky;top:64px;z-index:20}
#swap-os-app .swap-os-finance-tabs a{display:inline-flex;align-items:center;justify-content:center;gap:4px;flex:0 0 auto;min-height:40px;padding:0 13px;border:1px solid transparent;border-radius:10px;color:#465166;font-size:12px;font-weight:650;line-height:1.15;text-decoration:none;scroll-snap-align:start;transition:background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease}
#swap-os-app .swap-os-finance-tabs a span{font-weight:500;color:inherit;opacity:.65}
#swap-os-app .swap-os-finance-tabs a:hover{background:rgba(100,116,139,.10);color:#111827}
#swap-os-app .swap-os-finance-tabs a.active{background:#17152b;color:#fff;border-color:rgba(139,92,246,.65);box-shadow:0 3px 10px rgba(23,21,43,.16)}
#swap-os-app .swap-os-finance-tabs a.active span{opacity:.78}
#swap-os-app .swap-os-finance-tabs a:focus-visible{outline:2px solid #7c6df2;outline-offset:2px}
#swap-os-app .swap-os-finance-panel,#swap-os-app .swap-os-finance-overview,#swap-os-app .swap-os-finance-list,#swap-os-app .swap-os-finance-categories{scroll-margin-top:128px}
@media(max-width:780px){#swap-os-app .swap-os-finance-tabs{top:56px;border-radius:12px;padding:5px;gap:3px;margin-bottom:14px}#swap-os-app .swap-os-finance-tabs a{min-height:38px;padding:0 11px;font-size:11px}}
@media(max-width:480px){#swap-os-app .swap-os-finance-tabs{margin-left:-2px;margin-right:-2px;max-width:calc(100% + 4px);border-radius:11px}#swap-os-app .swap-os-finance-tabs a{min-height:36px;padding:0 10px}}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-finance-tabs a{transition:none}#swap-os-app .swap-os-finance-tabs{scroll-behavior:auto;scroll-snap-type:none}}


/* SWAP OS v3.80.0 — Finance is a dedicated shell with a multi-stage sub-sidebar. */
#swap-os-app .swap-os-finance-workspace-shell{display:grid;grid-template-columns:minmax(176px,218px) minmax(0,1fr);align-items:start;gap:18px;margin:0 0 18px;min-width:0}
#swap-os-app .swap-os-finance-tabs{display:flex;flex-direction:column;align-items:stretch;gap:4px;position:sticky;top:76px;z-index:12;max-height:calc(100vh - 100px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;padding:10px;border:1px solid rgba(148,163,184,.22);border-radius:16px;background:rgba(248,250,252,.92);box-shadow:0 8px 24px rgba(15,23,42,.055);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);white-space:normal}
#swap-os-app .swap-os-finance-tabs a{display:flex;align-items:center;justify-content:flex-start;flex:0 0 auto;min-height:42px;padding:9px 12px;border:1px solid transparent;border-radius:10px;color:#465166;font-size:13px;font-weight:650;line-height:1.25;text-decoration:none;white-space:normal;transition:background .16s ease,color .16s ease,border-color .16s ease}
#swap-os-app .swap-os-finance-tabs a span{font-weight:500;color:inherit;opacity:.7}
#swap-os-app .swap-os-finance-tabs a:hover{background:rgba(100,116,139,.10);color:#111827}
#swap-os-app .swap-os-finance-tabs a.active{background:#17152b;color:#fff;border-color:rgba(139,92,246,.65);box-shadow:0 3px 10px rgba(23,21,43,.16)}
#swap-os-app .swap-os-finance-workspace-content{min-width:0;overflow-wrap:anywhere}
#swap-os-app .swap-os-finance-workspace-content > .swap-os-finance-overview{margin-top:0}
#swap-os-app .swap-os-finance-panel{min-width:0}
@media(max-width:900px){#swap-os-app .swap-os-finance-workspace-shell{grid-template-columns:minmax(145px,175px) minmax(0,1fr);gap:12px}#swap-os-app .swap-os-finance-tabs{top:64px;padding:7px}#swap-os-app .swap-os-finance-tabs a{font-size:12px;padding:9px 10px}}
@media(max-width:680px){#swap-os-app .swap-os-finance-workspace-shell{grid-template-columns:minmax(0,1fr);gap:10px}#swap-os-app .swap-os-finance-tabs{position:sticky;top:56px;z-index:24;flex-direction:row;align-items:center;gap:4px;max-height:none;overflow-x:auto;overflow-y:hidden;white-space:nowrap;padding:6px;border-radius:12px;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}#swap-os-app .swap-os-finance-tabs a{flex:0 0 auto;min-height:38px;white-space:nowrap;padding:8px 11px;font-size:11px;scroll-snap-align:start}#swap-os-app .swap-os-finance-tabs a span{display:inline}}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-finance-tabs a{transition:none}#swap-os-app .swap-os-finance-tabs{scroll-behavior:auto;scroll-snap-type:none}}

/* SWAP OS v3.82.0 — Finance sections nest under Finance in the persistent main sidebar. */
#swap-os-app .swap-os-finance-subnav-group{margin:3px 0 8px 0;padding:0 0 0 12px;border-left:1px solid rgba(139,92,246,.28)}
#swap-os-app .swap-os-finance-subnav-group[hidden]{display:none!important}
#swap-os-app .swap-os-finance-subnav-group .swap-os-finance-tabs{position:static;display:flex;flex-direction:column;align-items:stretch;gap:3px;max-height:min(56vh,560px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;padding:4px;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;white-space:normal}
#swap-os-app .swap-os-finance-subnav-group .swap-os-finance-tabs a{display:flex;align-items:center;justify-content:flex-start;min-height:34px;padding:7px 10px;border:1px solid transparent;border-radius:9px;font-size:12px;line-height:1.25;white-space:normal}
#swap-os-app .swap-os-finance-subnav-group .swap-os-finance-tabs a.active{background:#17152b;color:#fff;border-color:rgba(139,92,246,.7);box-shadow:0 3px 10px rgba(23,21,43,.15)}
#swap-os-app .swap-os-finance-subnav-group .swap-os-finance-tabs a:focus-visible{outline:2px solid #7c6df2;outline-offset:1px}
#swap-os-app .swap-os-finance-panel,#swap-os-app .swap-os-finance-overview,#swap-os-app .swap-os-finance-list,#swap-os-app .swap-os-finance-categories{scroll-margin-top:100px}
@media(max-width:780px){#swap-os-app .swap-os-finance-subnav-group{margin:2px 0 8px 8px;padding-left:8px}#swap-os-app .swap-os-finance-subnav-group .swap-os-finance-tabs{max-height:36vh;padding:3px}#swap-os-app .swap-os-finance-subnav-group .swap-os-finance-tabs a{min-height:36px;font-size:12px;padding:8px 10px}}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-finance-subnav-group .swap-os-finance-tabs a{transition:none}}


/* v3.83.0 — Hostinger-inspired multi-stage workspace navigation. */
#swap-os-app.swap-os-multistage-layout{display:flex;align-items:stretch;overflow:clip}
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar{flex:0 0 76px;width:76px;padding-inline:10px}
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-brand-copy,
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-workspace>span:nth-child(2),
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-workspace .swap-os-chevron,
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-nav-label,
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-nav-link{ }
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-nav-link{justify-content:center;gap:0;padding-inline:4px;min-height:43px;font-size:0}
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-nav-link>span{font-size:17px;width:auto}
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-brand{justify-content:center;padding-inline:0}
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-brand-copy{display:none}
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-workspace{justify-content:center;padding:8px 3px}
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-workspace>span:nth-child(2),#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-workspace .swap-os-chevron{display:none}
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-profile>span{display:none}
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-ai-promo{justify-content:center;padding:7px}
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-ai-promo>span:nth-child(2),#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-promo-arrow{display:none}
#swap-os-app .swap-os-context-sidebar{position:sticky;top:0;align-self:flex-start;flex:0 0 224px;width:224px;height:100vh;max-height:100vh;overflow-y:auto;overscroll-behavior:contain;padding:26px 12px 20px;background:var(--so-sidebar);border-right:1px solid var(--so-border);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);z-index:20}
#swap-os-app .swap-os-context-heading{padding:0 10px 20px;border-bottom:1px solid var(--so-border);margin-bottom:12px}
#swap-os-app .swap-os-context-eyebrow{font-size:9px;font-weight:700;letter-spacing:1.2px;color:var(--so-muted)}
#swap-os-app .swap-os-context-heading h2{font:700 20px/1.2 Manrope,sans-serif;margin:9px 0 6px;color:var(--so-text)}
#swap-os-app .swap-os-context-heading p{font-size:11px;color:var(--so-muted);margin:0}
#swap-os-app .swap-os-context-sidebar nav{display:grid;gap:4px}
#swap-os-app .swap-os-context-link{display:flex;align-items:center;min-height:39px;padding:9px 11px;border-radius:9px;font-size:11px;font-weight:600;color:var(--so-muted);transition:background .16s,color .16s,box-shadow .16s}
#swap-os-app .swap-os-context-link:hover{background:#ffffff0b;color:var(--so-text)}
#swap-os-app .swap-os-context-link.active{background:#a28aff1b;color:var(--so-text);box-shadow:inset 0 0 0 1px #a28aff65}
#swap-os-app .swap-os-context-empty{font-size:11px;color:var(--so-muted);line-height:1.6;padding:8px 10px}
#swap-os-app.swap-os-light .swap-os-context-sidebar{background:rgba(250,250,252,.96)}
#swap-os-app.swap-os-light .swap-os-context-link.active{background:#6953dc12;color:#4433a7;box-shadow:inset 0 0 0 1px #6953dc45}
#swap-os-app.swap-os-multistage-layout .swap-os-main{flex:1;min-width:0}
@media(max-width:780px){#swap-os-app.swap-os-multistage-layout{display:block;overflow:visible}#swap-os-app.swap-os-multistage-layout .swap-os-sidebar{width:min(275px,85vw);flex-basis:min(275px,85vw)}#swap-os-app .swap-os-context-sidebar{position:sticky;top:59px;width:100%;height:auto;max-height:none;overflow-x:auto;overflow-y:hidden;padding:8px 10px;border-right:0;border-bottom:1px solid var(--so-border);z-index:18}#swap-os-app .swap-os-context-heading{display:none}#swap-os-app .swap-os-context-sidebar nav{display:flex;gap:6px;width:max-content;min-width:100%}#swap-os-app .swap-os-context-link{min-height:36px;white-space:nowrap;padding:8px 12px}#swap-os-app .swap-os-context-empty{max-width:80vw}#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-nav-link{justify-content:flex-start;gap:10px;padding-inline:10px;font-size:11px}#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-brand-copy,#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-workspace>span:nth-child(2),#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-nav-label{display:initial}#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-profile>span,#swap-os-app.swap-os-multistage-layout .swap-os-sidebar .swap-os-ai-promo>span:nth-child(2){display:flex}}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-context-link{transition:none}}


/* v3.84.0 Finance: independent content shells for every sub-navigation item. */
#swap-os-app .swap-os-finance-content-views{min-width:0;display:block}
#swap-os-app .swap-os-finance-view{min-width:0;animation:swapOsFinanceViewIn .18s ease-out}
#swap-os-app .swap-os-finance-view[hidden]{display:none!important}
#swap-os-app .swap-os-finance-view-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px;padding:0 0 12px;border-bottom:1px solid rgba(148,163,184,.18)}
#swap-os-app .swap-os-finance-view-heading h3{margin:0;font-size:clamp(18px,2vw,25px);font-weight:720;letter-spacing:-.035em}
#swap-os-app .swap-os-finance-view > .swap-os-finance-hero{width:100%;min-height:240px}
#swap-os-app .swap-os-finance-view > .swap-os-finance-insights{margin-top:0}
#swap-os-app .swap-os-finance-view > .swap-os-finance-categories,#swap-os-app .swap-os-finance-view > .swap-os-finance-list{margin-top:0}
@keyframes swapOsFinanceViewIn{from{opacity:.72;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-finance-view{animation:none}}
/* SWAP OS v3.85.0 — clear, independent Finance view headers. */
#swap-os-app .swap-os-finance-view-description{margin:-5px 0 16px;color:var(--swap-muted,#8992a5);font-size:12px;line-height:1.55;max-width:72ch}
#swap-os-app .swap-os-finance-view[hidden]{display:none!important}


/* SWAP OS v3.86.0 — Finance Decision Engine, scoped to Finance only */
.swap-os-finance-decision-engine{margin:18px 0;padding:clamp(16px,2.2vw,24px);border:1px solid var(--swap-os-border,rgba(139,124,246,.24));border-radius:20px;background:linear-gradient(145deg,rgba(115,83,210,.09),rgba(18,22,38,.24));box-shadow:0 14px 38px rgba(0,0,0,.12)}
.swap-os-finance-decision-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.swap-os-finance-decision-head h4{margin:5px 0 6px;font-size:clamp(19px,2vw,25px)}.swap-os-finance-decision-head p{margin:0;max-width:760px;color:var(--swap-os-muted,#9da7bc);font-size:13px;line-height:1.6}
.swap-os-finance-decision-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.swap-os-finance-decision-metrics>div,.swap-os-finance-decision-bucket-grid article{min-width:0;padding:14px;border:1px solid var(--swap-os-border,rgba(139,124,246,.18));border-radius:13px;background:rgba(9,12,23,.25)}.swap-os-finance-decision-metrics small,.swap-os-finance-decision-metrics span,.swap-os-finance-decision-bucket-grid small{display:block;color:var(--swap-os-muted,#9da7bc);font-size:11px;line-height:1.5}.swap-os-finance-decision-metrics strong,.swap-os-finance-decision-bucket-grid strong{display:block;margin:6px 0;font-size:clamp(16px,1.8vw,22px);overflow-wrap:anywhere}.swap-os-finance-decision-metrics .positive{color:#3fd6a0}.swap-os-finance-decision-metrics .negative{color:#ff8c9a}.swap-os-finance-decision-buckets h5,.swap-os-finance-decision-actions h5{margin:18px 0 10px;font-size:14px}.swap-os-finance-decision-bucket-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.swap-os-finance-decision-bucket-grid article>span{font-size:12px;font-weight:700}.swap-os-finance-decision-actions{display:grid;gap:9px}.swap-os-finance-decision-action{display:flex;align-items:flex-start;gap:12px;padding:13px;border:1px solid var(--swap-os-border,rgba(139,124,246,.18));border-radius:12px;background:rgba(9,12,23,.2)}.swap-os-finance-decision-action.warn{border-color:rgba(245,158,11,.36)}.swap-os-finance-decision-action.good{border-color:rgba(52,211,153,.3)}.swap-os-finance-decision-number{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:9px;background:rgba(139,92,246,.18);font-size:12px;font-weight:700}.swap-os-finance-decision-action strong{font-size:13px}.swap-os-finance-decision-action p{margin:5px 0 0;color:var(--swap-os-muted,#9da7bc);font-size:12px;line-height:1.6}.swap-os-finance-decision-engine>.swap-os-report-note{margin-top:16px;font-size:11px;line-height:1.6}
@media(max-width:800px){.swap-os-finance-decision-metrics,.swap-os-finance-decision-bucket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.swap-os-finance-decision-head{flex-direction:column}.swap-os-finance-decision-head .swap-os-outline-btn{width:100%}}
@media(max-width:420px){.swap-os-finance-decision-metrics,.swap-os-finance-decision-bucket-grid{grid-template-columns:1fr}.swap-os-finance-decision-engine{padding:14px;border-radius:16px}}

/* v3.88.0 Finance manual classification editor */
.swap-os-finance-classifier{margin-top:1rem;padding:1rem;border:1px solid var(--swap-os-border,rgba(148,163,184,.22));border-radius:16px;background:rgba(127,127,127,.035)}
.swap-os-finance-classifier h5{margin:0 0 .4rem;font-size:1rem}
.swap-os-finance-classifier>p{margin:.25rem 0 .8rem;color:var(--swap-os-muted,#8790a2);font-size:.82rem;line-height:1.5}
.swap-os-classification-list{display:grid;gap:.45rem}
.swap-os-classification-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,160px) auto;align-items:center;gap:.65rem;padding:.65rem;border:1px solid var(--swap-os-border,rgba(148,163,184,.18));border-radius:12px;background:var(--swap-os-surface,rgba(127,127,127,.035))}
.swap-os-classification-info{min-width:0;display:grid;gap:.2rem}.swap-os-classification-info strong{overflow-wrap:anywhere;font-size:.86rem}.swap-os-classification-info small{color:var(--swap-os-muted,#8790a2);font-size:.75rem}
.swap-os-classification-select-label select{width:100%;min-height:38px;border-radius:9px}.swap-os-classification-row button{white-space:nowrap}
@media(max-width:640px){.swap-os-classification-row{grid-template-columns:minmax(0,1fr) auto}.swap-os-classification-info{grid-column:1/-1}.swap-os-classification-select-label{grid-column:1}.swap-os-classification-row button{grid-column:2;grid-row:2}.swap-os-finance-classifier{padding:.75rem}}

/* v3.90.0: three-column navigation contract — primary rail, contextual submenu, independent content shell. */
#swap-os-app.swap-os-multistage-layout{display:flex;align-items:stretch;min-height:100vh}
#swap-os-app.swap-os-multistage-layout .swap-os-sidebar{position:sticky;top:0;align-self:flex-start;height:100vh;flex:0 0 76px;z-index:30}
#swap-os-app.swap-os-multistage-layout .swap-os-context-sidebar{flex:0 0 224px;width:224px;min-height:100vh}
#swap-os-app.swap-os-multistage-layout .swap-os-main{flex:1 1 auto;min-width:0;min-height:100vh}
#swap-os-app .swap-os-finance-view[hidden]{display:none!important}
#swap-os-app .swap-os-finance-view{scroll-margin-top:84px}
@media(max-width:780px){#swap-os-app.swap-os-multistage-layout{display:block}#swap-os-app.swap-os-multistage-layout .swap-os-sidebar{position:sticky;top:0;height:auto;min-height:0;width:100%;flex:none}#swap-os-app.swap-os-multistage-layout .swap-os-context-sidebar{min-height:0}#swap-os-app.swap-os-multistage-layout .swap-os-main{min-height:0}}


/* v3.94.0 — reinforce sticky navigation and Agent naming presentation. */
#swap-os-app{overflow:visible;isolation:isolate}
#swap-os-app .swap-os-sidebar{position:sticky;top:0;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;align-self:flex-start;overflow-y:auto;overscroll-behavior-y:contain;z-index:40}
#swap-os-app .swap-os-topbar{position:sticky;top:0;z-index:35}
#swap-os-app .swap-os-context-sidebar{position:sticky;top:68px;align-self:flex-start;max-height:calc(100dvh - 68px);overflow-y:auto;overscroll-behavior-y:contain}
#swap-os-app .swap-os-ai-promo b{letter-spacing:.01em}
@media(max-width:780px){
 #swap-os-app{overflow:clip}
 #swap-os-app .swap-os-sidebar{position:fixed;top:0;bottom:0;left:0;height:100dvh;max-height:100dvh;z-index:60}
 #swap-os-app .swap-os-topbar{top:0;z-index:35}
 #swap-os-app .swap-os-context-sidebar{position:sticky;top:59px;max-height:none;overflow-x:auto;overflow-y:hidden;z-index:25}
}


/* v3.95.0 — shell isolation correction: finance tools must never sit above every tab. */
#swap-os-app .swap-os-finance-workspace-tools[hidden]{display:none!important}
#swap-os-app .swap-os-finance-content-views{min-width:0;width:100%}
#swap-os-app .swap-os-finance-view .swap-os-finance-workspace-metrics{margin:0 0 16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
#swap-os-app .swap-os-finance-view .swap-os-finance-toolbar{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 16px;min-width:0}
#swap-os-app .swap-os-finance-view .swap-os-finance-toolbar input[type=search]{flex:1 1 220px;min-width:150px}
#swap-os-app .swap-os-finance-view .swap-os-finance-toolbar select,
#swap-os-app .swap-os-finance-view .swap-os-finance-toolbar input[type=date]{min-width:120px;max-width:100%}
@media(max-width:780px){#swap-os-app .swap-os-finance-view .swap-os-finance-workspace-metrics{grid-template-columns:1fr}#swap-os-app .swap-os-finance-view .swap-os-finance-toolbar>*{flex:1 1 100%;width:100%}}


/* v3.96.0 — independent Finance shell layout and reliable control placement. */
#swap-os-app .swap-os-finance-workspace-tools[hidden]{display:none!important}
#swap-os-app .swap-os-finance-content-views{display:block;min-width:0;width:100%}
#swap-os-app .swap-os-finance-view[hidden]{display:none!important}
#swap-os-app .swap-os-finance-view{min-width:0;width:100%;box-sizing:border-box}
#swap-os-app .swap-os-finance-view > .swap-os-finance-workspace-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px}
#swap-os-app .swap-os-finance-view > .swap-os-finance-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 16px;padding:12px;border:1px solid var(--so-border,rgba(148,163,184,.2));border-radius:14px;background:var(--so-panel,rgba(15,23,42,.42))}
#swap-os-app .swap-os-finance-view > .swap-os-finance-toolbar input[type=search]{flex:1 1 220px;min-width:150px}
#swap-os-app .swap-os-finance-view > .swap-os-finance-toolbar select,#swap-os-app .swap-os-finance-view > .swap-os-finance-toolbar input[type=date]{min-width:120px;max-width:100%}
@media(max-width:780px){#swap-os-app .swap-os-finance-view > .swap-os-finance-workspace-metrics{grid-template-columns:1fr}#swap-os-app .swap-os-finance-view > .swap-os-finance-toolbar>*{flex:1 1 100%;width:100%}}

/* SWAP OS v3.97.0 — compact workspace navigation polish */
#swap-os-app .swap-os-sidebar{flex:0 0 220px;width:220px;padding:14px 10px max(10px,env(safe-area-inset-bottom));gap:0}
#swap-os-app .swap-os-brand{gap:8px;padding:0 5px 15px}
#swap-os-app .swap-os-brand-mark{width:32px;height:32px;flex-basis:32px;font-size:20px;border-radius:10px}
#swap-os-app .swap-os-brand-copy b{font-size:14px}
#swap-os-app .swap-os-workspace{padding:8px;margin-bottom:14px;gap:7px}
#swap-os-app .swap-os-nav-label{padding:0 8px 6px;font-size:8px;letter-spacing:1.1px}
#swap-os-app .swap-os-nav{gap:2px;margin-bottom:13px}
#swap-os-app .swap-os-nav-link{min-height:34px;padding:0 8px;gap:8px;border-radius:8px;font-size:11px}
#swap-os-app .swap-os-nav-link>span{width:16px;font-size:14px}
#swap-os-app .swap-os-ai-promo{padding:7px;gap:7px;margin:6px 0 8px;border-radius:9px}
#swap-os-app .swap-os-ai-spark{width:26px;height:26px;flex:0 0 26px;font-size:15px}
#swap-os-app .swap-os-profile{margin-top:6px;padding:10px 4px 0;gap:7px}
#swap-os-app .swap-os-avatar{width:28px;height:28px;flex-basis:28px}
#swap-os-app .swap-os-context-sidebar{flex:0 0 224px;width:224px;padding:18px 10px 14px}
#swap-os-app .swap-os-context-sidebar nav{gap:3px}
#swap-os-app .swap-os-context-link{min-height:35px;padding:8px 10px;border-radius:8px;font-size:11px}
#swap-os-app .swap-os-context-heading{margin:0 8px 10px;font-size:9px;letter-spacing:1.2px}
@media(max-width:1100px){#swap-os-app .swap-os-sidebar{flex-basis:205px;width:205px}}
@media(max-width:780px){#swap-os-app .swap-os-sidebar{width:min(275px,85vw);flex-basis:min(275px,85vw);padding:18px 12px max(14px,env(safe-area-inset-bottom))}#swap-os-app .swap-os-context-sidebar{padding:8px 10px}}


/* SWAP OS v3.98.0 — sidebar completion pass: compact, sticky, independently scrollable. */
#swap-os-app .swap-os-sidebar{
  position:sticky;top:0;align-self:flex-start;
  height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;
  overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;
  scrollbar-width:thin;scrollbar-color:rgba(150,160,185,.28) transparent;
  flex:0 0 220px;width:220px;min-height:0;
  padding:12px 9px max(10px,env(safe-area-inset-bottom));
}
#swap-os-app .swap-os-sidebar::-webkit-scrollbar{width:5px}
#swap-os-app .swap-os-sidebar::-webkit-scrollbar-thumb{background:rgba(150,160,185,.25);border-radius:8px}
#swap-os-app .swap-os-sidebar::-webkit-scrollbar-track{background:transparent}
#swap-os-app .swap-os-brand{padding:0 4px 12px;gap:8px;flex-shrink:0}
#swap-os-app .swap-os-brand-mark{width:31px;height:31px;flex-basis:31px;font-size:19px;border-radius:9px}
#swap-os-app .swap-os-brand-copy b{font-size:13px}
#swap-os-app .swap-os-brand-copy small{font-size:7px;letter-spacing:.8px}
#swap-os-app .swap-os-workspace{min-height:42px;padding:7px 8px;margin-bottom:13px;gap:7px;flex-shrink:0}
#swap-os-app .swap-os-nav-label{padding:0 7px 5px;font-size:8px;letter-spacing:1px}
#swap-os-app .swap-os-nav{gap:1px;margin-bottom:12px}
#swap-os-app .swap-os-nav-link{min-height:32px;padding:0 8px;gap:8px;border-radius:7px;font-size:10.5px}
#swap-os-app .swap-os-nav-link>span{width:15px;font-size:13px;flex-shrink:0}
#swap-os-app .swap-os-nav-count{font-size:8px;padding:2px 5px}
#swap-os-app .swap-os-sidebar-spacer{min-height:7px;flex:1 0 7px}
#swap-os-app .swap-os-ai-promo{padding:7px;gap:7px;margin:5px 0 7px;border-radius:8px;flex-shrink:0}
#swap-os-app .swap-os-ai-spark{width:25px;height:25px;flex-basis:25px;font-size:14px}
#swap-os-app .swap-os-ai-promo b{font-size:10px}
#swap-os-app .swap-os-ai-promo small{font-size:8px}
#swap-os-app .swap-os-profile{margin-top:5px;padding:9px 3px 0;gap:7px;flex-shrink:0}
#swap-os-app .swap-os-avatar{width:27px;height:27px;flex-basis:27px}
#swap-os-app .swap-os-topbar{position:sticky;top:0;z-index:35}
#swap-os-app .swap-os-context-sidebar{position:sticky;top:64px;align-self:flex-start;height:calc(100dvh - 64px);max-height:calc(100dvh - 64px);overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:rgba(150,160,185,.22) transparent}
#swap-os-app .swap-os-context-sidebar::-webkit-scrollbar{width:4px}
#swap-os-app .swap-os-context-sidebar::-webkit-scrollbar-thumb{background:rgba(150,160,185,.2);border-radius:8px}
#swap-os-app .swap-os-context-link{min-height:32px;padding:7px 9px;font-size:10.5px}
#swap-os-app .swap-os-context-heading{margin:0 7px 8px;font-size:8px;letter-spacing:1.1px}
@media(max-width:1100px){#swap-os-app .swap-os-sidebar{flex-basis:205px;width:205px}}
@media(max-width:780px){
 #swap-os-app .swap-os-sidebar{position:fixed;top:0;bottom:0;left:0;height:100dvh;max-height:100dvh;width:min(275px,85vw);flex:0 0 min(275px,85vw);padding:16px 12px max(14px,env(safe-area-inset-bottom));z-index:60;transform:translateX(-105%);transition:transform .22s ease}
 #swap-os-app.swap-os-mobile-nav-open .swap-os-sidebar{transform:translateX(0)}
 #swap-os-app .swap-os-context-sidebar{position:sticky;top:59px;height:auto;max-height:none;overflow-x:auto;overflow-y:hidden;z-index:25}
 #swap-os-app .swap-os-context-sidebar nav{display:flex;gap:6px;width:max-content;min-width:100%}
 #swap-os-app .swap-os-context-link{white-space:nowrap;min-height:34px;padding:7px 10px}
 #swap-os-app .swap-os-topbar{top:0}
}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-sidebar{transition:none}}


/* SWAP OS v3.99.0 — sidebar completion: predictable compact rail and discoverable collapsed controls. */
#swap-os-app .swap-os-sidebar-collapse{display:inline-flex;align-items:center;justify-content:center;flex:0 0 27px;width:27px;height:27px;border:1px solid var(--so-border,rgba(148,163,184,.22));border-radius:9px;background:var(--so-card,rgba(255,255,255,.04));color:var(--so-text,#e8edf8);cursor:pointer;line-height:1;transition:background .18s ease,border-color .18s ease,transform .18s ease}
#swap-os-app .swap-os-sidebar-collapse:hover{background:rgba(139,92,246,.15);border-color:rgba(139,92,246,.55)}
#swap-os-app .swap-os-sidebar-collapse:focus-visible,#swap-os-app .swap-os-nav-link:focus-visible{outline:2px solid #a78bfa;outline-offset:2px}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-sidebar{flex:0 0 70px;width:70px;padding-inline:8px;overflow-x:visible}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-brand{justify-content:center;padding:0 0 14px;gap:0}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-brand-copy{display:none}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-sidebar-collapse{position:absolute;right:-5px;top:16px;z-index:5;box-shadow:0 3px 12px rgba(0,0,0,.25)}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-label{font-size:0;padding:5px 0;height:7px;overflow:hidden}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link{position:relative;justify-content:center;gap:0;padding:0;min-height:38px;font-size:0}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link>span:first-child{font-size:16px;width:auto}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link::after{content:attr(data-sidebar-label);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);padding:6px 9px;border-radius:7px;background:#171827;color:#f8fafc;border:1px solid rgba(167,139,250,.35);font-size:11px;line-height:1.2;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;z-index:100;box-shadow:0 8px 22px rgba(0,0,0,.3)}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link:hover::after,#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link:focus-visible::after{opacity:1;visibility:visible}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-workspace{justify-content:center;padding:8px 0}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-workspace>span:not(:first-child){display:none}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-ai-promo{justify-content:center;padding:8px 0}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-ai-promo>span:not(:first-child),#swap-os-app.swap-os-sidebar-collapsed .swap-os-profile>span,#swap-os-app.swap-os-sidebar-collapsed .swap-os-profile .swap-os-logout{display:none}
#swap-os-app.swap-os-sidebar-collapsed .swap-os-profile{justify-content:center;padding:10px 0}
@media(max-width:780px){#swap-os-app.swap-os-sidebar-collapsed .swap-os-sidebar{width:min(275px,85vw);flex-basis:min(275px,85vw);padding:16px 12px max(14px,env(safe-area-inset-bottom))}#swap-os-app.swap-os-sidebar-collapsed .swap-os-brand{justify-content:flex-start;padding:0 38px 12px 4px}#swap-os-app.swap-os-sidebar-collapsed .swap-os-brand-copy,#swap-os-app.swap-os-sidebar-collapsed .swap-os-workspace>span:not(:first-child),#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-label{display:initial}#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-label{font-size:8px;height:auto;padding:0 7px 5px}#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link{justify-content:flex-start;gap:8px;padding:0 8px;min-height:32px;font-size:10.5px}#swap-os-app.swap-os-sidebar-collapsed .swap-os-nav-link::after{display:none}#swap-os-app.swap-os-sidebar-collapsed .swap-os-ai-promo{justify-content:flex-start;padding:7px}#swap-os-app.swap-os-sidebar-collapsed .swap-os-ai-promo>span:not(:first-child),#swap-os-app.swap-os-sidebar-collapsed .swap-os-profile>span{display:initial}}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-sidebar-collapse{transition:none}}
/* v4.1.0 notification center */
#swap-os-app .swap-os-top-actions{position:relative}
#swap-os-app .swap-os-notification-wrap{position:relative;display:flex;align-items:center}
#swap-os-app .swap-os-notification-toggle{position:relative;display:grid;place-items:center;font-size:20px;line-height:1}
#swap-os-app .swap-os-notification-badge{position:absolute;right:-4px;top:-5px;min-width:17px;height:17px;padding:0 4px;border:2px solid var(--so-bg);border-radius:999px;background:#ef3340;color:#fff;font:700 9px/13px system-ui;text-align:center}
#swap-os-app .swap-os-notification-popover{position:absolute;z-index:120;top:calc(100% + 12px);right:-42px;width:min(390px,calc(100vw - 28px));max-height:min(560px,calc(100vh - 100px));overflow:auto;border:1px solid #26334a;border-radius:15px;background:rgba(10,16,29,.98);box-shadow:0 24px 80px #0009;backdrop-filter:blur(24px);color:var(--so-text)}
#swap-os-app .swap-os-notification-popover[hidden]{display:none}
#swap-os-app .swap-os-notification-popover.is-open:not([hidden]){display:block;visibility:visible;opacity:1;pointer-events:auto}
#swap-os-app .swap-os-notification-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:17px 17px 13px;border-bottom:1px solid #ffffff10;background:#0b1120f5}
#swap-os-app .swap-os-notification-head strong{display:block;font-size:14px}
#swap-os-app .swap-os-notification-head small{display:block;margin-top:4px;color:#8e9bb2;font-size:10px}
#swap-os-app .swap-os-notification-read,#swap-os-app .swap-os-notification-foot button{border:0;background:transparent;color:#b69aff;font-size:10px;white-space:nowrap;padding:3px}
#swap-os-app .swap-os-notification-item{display:flex;gap:11px;padding:13px 15px;border-bottom:1px solid #ffffff0b;cursor:pointer}
#swap-os-app .swap-os-notification-item:hover{background:#ffffff06}
#swap-os-app .swap-os-notification-item.unread{background:linear-gradient(90deg,#7c3aed12,transparent)}
#swap-os-app .swap-os-notification-icon{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:10px;background:#6d42d82a;color:#c5aaff;font-size:16px}
#swap-os-app .swap-os-notification-copy{min-width:0;flex:1}
#swap-os-app .swap-os-notification-title-row{display:flex;gap:8px;align-items:center;justify-content:space-between}
#swap-os-app .swap-os-notification-title{font-size:11px;font-weight:700}
#swap-os-app .swap-os-notification-time{color:#8490a6;font-size:9px;white-space:nowrap}
#swap-os-app .swap-os-notification-message{display:block;color:#a7b3c8;font-size:10px;line-height:1.5;margin-top:4px;overflow-wrap:anywhere}
#swap-os-app .swap-os-notification-dot{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#4b8cff;margin-top:5px}
#swap-os-app .swap-os-notification-empty{padding:34px 18px;text-align:center;color:#8e9bb2;font-size:11px}
#swap-os-app .swap-os-notification-foot{display:flex;align-items:center;justify-content:space-between;padding:11px 15px;color:#73819a;font-size:9px}
#swap-os-app .swap-os-voice-alert-settings{padding:13px 15px;border-top:1px solid #ffffff12;background:#ffffff03}
#swap-os-app .swap-os-voice-alert-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
#swap-os-app .swap-os-voice-alert-heading strong{display:block;font-size:11px;color:var(--so-text)}
#swap-os-app .swap-os-voice-alert-heading small{display:block;margin-top:4px;color:#8e9bb2;font-size:9px;line-height:1.45}
#swap-os-app .swap-os-voice-alert-switch{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:10px;color:#c5aaff}
#swap-os-app .swap-os-voice-alert-switch input{accent-color:#8b5cf6}
#swap-os-app .swap-os-voice-alert-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;margin-top:10px}#swap-os-app .swap-os-voice-alert-fields>small{display:block;min-width:0;color:#8e9bb2;font-size:9px;line-height:1.5;overflow-wrap:anywhere}#swap-os-app .swap-os-voice-alert-fields label{min-width:0}#swap-os-app .swap-os-voice-alert-fields input{min-height:34px}
#swap-os-app .swap-os-voice-alert-fields label{display:grid;gap:5px;color:#8e9bb2;font-size:9px}
#swap-os-app .swap-os-voice-alert-fields select,#swap-os-app .swap-os-voice-alert-fields input{min-width:0;width:100%;box-sizing:border-box;border:1px solid #344057;border-radius:7px;background:#111a2c;color:#e7ecf7;padding:7px;font:inherit;font-size:10px}
#swap-os-app .swap-os-voice-alert-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-top:9px}#swap-os-app .swap-os-voice-alert-actions #swapOsVoiceAlertStatus{min-width:0;overflow-wrap:anywhere}
#swap-os-app #swapOsVoiceAlertStatus{color:#8e9bb2;font-size:9px;line-height:1.4}
#swap-os-app #swapOsVoiceAlertTest{border:1px solid #6550a4;border-radius:7px;background:#6d42d82a;color:#d5c4ff;padding:7px 9px;font-size:10px;white-space:nowrap}
#swap-os-app #swapOsVoiceAlertTest:disabled{opacity:.55;cursor:wait}
#swap-os-app.swap-os-light .swap-os-voice-alert-fields select,#swap-os-app.swap-os-light .swap-os-voice-alert-fields input{background:#fff;color:#182237;border-color:#d6deeb}

#swap-os-app.swap-os-light .swap-os-notification-popover{background:rgba(255,255,255,.98);border-color:#dfe5ef;color:#182237}
#swap-os-app.swap-os-light .swap-os-notification-head{background:#fffffff5;border-bottom-color:#e8edf5}
#swap-os-app.swap-os-light .swap-os-notification-message{color:#63718a}
@media(max-width:780px){#swap-os-app .swap-os-notification-popover{position:fixed;top:65px;right:10px;width:min(390px,calc(100vw - 20px));max-height:calc(100vh - 82px)}#swap-os-app .swap-os-notification-head{padding:14px}}

/* v5.6.0: per-category spoken notification preferences */
.swap-os-voice-category-options{display:flex;flex-wrap:wrap;gap:8px 14px;margin:10px 0 4px;padding:10px 12px;border:1px solid var(--swap-os-border,rgba(140,140,160,.22));border-radius:10px;min-width:0}
.swap-os-voice-category-options legend{padding:0 5px;font-size:11px;font-weight:650;opacity:.8}
.swap-os-voice-category-options label{display:inline-flex;align-items:center;gap:6px;font-size:12px;cursor:pointer}
.swap-os-voice-category-options input{accent-color:#8b5cf6}

/* v6.5.0 task reminder snooze action */
.swap-os-task-snooze{display:inline-flex;align-items:center;justify-content:center;margin:8px 0 0 42px;padding:6px 10px;border:1px solid var(--swap-border,rgba(255,255,255,.14));border-radius:8px;background:transparent;color:inherit;font:inherit;font-size:11px;cursor:pointer}.swap-os-task-snooze:disabled{opacity:.6;cursor:default}

/* v7.0.0: visible pending task snooze time. */
.swap-os-task-snooze-status{display:block;flex-basis:100%;width:100%;margin:8px 0 2px 42px;color:var(--swap-muted,#a9adba);font-size:11px;line-height:1.4}
.swap-os-task-snooze-options{display:flex;flex-wrap:wrap;align-items:center;gap:4px}

/* v7.3.0 custom task snooze input */
.swap-os-task-snooze-custom-label{display:inline-flex;align-items:center;gap:5px;margin:2px 0;color:var(--swap-muted,#a9adba);font-size:10px;white-space:nowrap}
.swap-os-task-snooze-custom-input{width:66px;min-height:30px;padding:4px 6px;border:1px solid var(--swap-border,rgba(255,255,255,.14));border-radius:7px;background:var(--swap-panel,#171923);color:var(--swap-text,#f5f6fa);font:inherit;font-size:11px}
.swap-os-task-snooze-custom-input:focus{outline:2px solid var(--swap-accent,#8b7cff);outline-offset:1px}

/* v7.5.0 custom date/time task snooze controls */
.swap-os-task-snooze-custom-time-label{display:inline-flex;align-items:center;gap:5px;margin:2px 0;color:var(--swap-muted,#a9adba);font-size:10px;white-space:nowrap}.swap-os-task-snooze-custom-time-input{width:190px;min-height:30px;padding:4px 6px;border:1px solid var(--swap-border,rgba(255,255,255,.14));border-radius:7px;background:var(--swap-panel,#171923);color:var(--swap-text,#f5f6fa);font:inherit;font-size:11px}.swap-os-task-snooze-custom-time-input:focus{outline:2px solid var(--swap-accent,#8b7cff);outline-offset:1px}

/* v7.8.0 pending task snooze manager */
#swap-os-app .swap-os-pending-snoozes{padding:10px 16px 12px;border-bottom:1px solid #ffffff12;background:#0d1424;max-height:220px;overflow:auto}#swap-os-app .swap-os-pending-snoozes[hidden]{display:none}#swap-os-app .swap-os-pending-snoozes-title{font-size:11px;font-weight:700;color:var(--swap-muted,#a9adba);margin:0 0 7px}#swap-os-app .swap-os-pending-snooze-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #ffffff0d}#swap-os-app .swap-os-pending-snooze-row:last-child{border-bottom:0}#swap-os-app .swap-os-pending-snooze-copy{display:flex;flex-direction:column;gap:3px;min-width:0}#swap-os-app .swap-os-pending-snooze-copy strong{font-size:11px;overflow-wrap:anywhere}#swap-os-app .swap-os-pending-snooze-copy time{font-size:10px;color:var(--swap-muted,#a9adba)}#swap-os-app .swap-os-task-snooze-cancel-one{border:1px solid var(--swap-border,rgba(255,255,255,.14));border-radius:7px;background:transparent;color:inherit;padding:5px 8px;font:inherit;font-size:10px;cursor:pointer;flex-shrink:0}#swap-os-app .swap-os-pending-snoozes-empty{font-size:11px;color:var(--swap-muted,#a9adba);padding:5px 0}

#swap-os-app #swapOsReminderDeliveryStatus{display:block;margin-top:4px;font-size:10px;line-height:1.4;overflow-wrap:anywhere;color:var(--swap-muted,#8f95a3)}#swap-os-app #swapOsReminderDeliveryStatus[data-state="ok"]{color:#35b779}#swap-os-app #swapOsReminderDeliveryStatus[data-state="error"]{color:#e28b82}

/* SWAP OS 8.8.0 Calendar-first task workflow */
#swap-os-app .swap-os-metro-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;margin-bottom:14px;border:1px solid var(--so-border);border-radius:12px;background:linear-gradient(115deg,#152544,#101827)}
#swap-os-app .swap-os-metro-intro h2{font-size:19px;margin:6px 0}#swap-os-app .swap-os-metro-intro p{margin:0;color:var(--so-muted);font-size:11px}#swap-os-app .swap-os-metro-actions{display:flex;gap:8px;flex-wrap:wrap;min-width:260px}#swap-os-app .swap-os-metro-actions button{width:auto;white-space:nowrap;justify-content:center}
#swap-os-app .swap-os-task-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}#swap-os-app .swap-os-task-form-grid>div{min-width:0}#swap-os-app .swap-os-slot-suggestions{border:1px solid var(--so-border);border-radius:9px;padding:12px;margin-top:8px;background:#ffffff03}#swap-os-app .swap-os-slot-head{display:flex;align-items:center;justify-content:space-between;gap:10px}#swap-os-app .swap-os-slot-head b{font-size:11px}#swap-os-app .swap-os-slot-head button{width:auto;padding:7px 10px}#swap-os-app .swap-os-slot-suggestions>p{font-size:9px;color:var(--so-muted);margin:7px 0 10px}#swap-os-app .swap-os-task-slot-option{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid var(--so-border);border-radius:8px;margin-top:7px;cursor:pointer}#swap-os-app .swap-os-task-slot-option input{width:auto;accent-color:#5795ff}#swap-os-app .swap-os-task-slot-option span{display:flex;flex-direction:column;gap:4px;flex:1}#swap-os-app .swap-os-task-slot-option b{font-size:10px;color:var(--so-text)}#swap-os-app .swap-os-task-slot-option small{font-size:9px;color:var(--so-muted)}#swap-os-app .swap-os-task-slot-option em{font-size:8px;color:#85adff;font-style:normal}#swap-os-app .swap-os-task-slot-option.is-selected{border-color:var(--so-blue);background:#5795ff12}
#swap-os-app.swap-os-light .swap-os-metro-intro{background:linear-gradient(115deg,#eef4ff,#fff)}
@media(max-width:700px){#swap-os-app .swap-os-metro-intro{align-items:stretch;flex-direction:column}#swap-os-app .swap-os-metro-actions{min-width:0}#swap-os-app .swap-os-metro-actions button{flex:1}#swap-os-app .swap-os-task-form-grid{grid-template-columns:1fr}}


/* v9.0.0: Calendar-first 168-hour weekly timeline */
#swap-os-app .swap-os-week-grid { display:grid; grid-template-columns:54px repeat(7,minmax(112px,1fr)); min-width:850px; position:relative; border:1px solid var(--swap-border,#1c2a40); border-radius:12px; overflow:hidden; background:var(--swap-card,#0d1524); }
#swap-os-app .swap-os-calendar-grid:has(.swap-os-week-grid) { display:block; overflow-x:auto; }
#swap-os-app .swap-os-week-corner,#swap-os-app .swap-os-week-day-head { min-height:54px; padding:8px; display:flex; align-items:center; justify-content:center; gap:5px; border-bottom:1px solid var(--swap-border,#1c2a40); border-right:1px solid var(--swap-border,#1c2a40); background:rgba(255,255,255,.025); }
#swap-os-app .swap-os-week-corner { font-size:9px; color:var(--swap-muted,#8da0bf); }
#swap-os-app .swap-os-week-day-head { flex-direction:column; font-size:11px; color:var(--swap-muted,#8da0bf); }
#swap-os-app .swap-os-week-day-head b { font-size:16px; color:var(--swap-text,#eef4ff); }
#swap-os-app .swap-os-week-day-head.is-today b { color:var(--swap-accent,#4b82ff); }
#swap-os-app .swap-os-week-time-column { display:grid; grid-template-rows:repeat(var(--swap-os-week-hours,17),48px); }
#swap-os-app .swap-os-week-time-column div { font-size:10px; color:var(--swap-muted,#8da0bf); text-align:center; padding-top:4px; border-right:1px solid var(--swap-border,#1c2a40); border-bottom:1px solid var(--swap-border,#1c2a40); }
#swap-os-app .swap-os-week-day-column { position:relative; height:var(--swap-os-week-visible-height,816px); border-right:1px solid var(--swap-border,#1c2a40); background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 47px,var(--swap-border,#1c2a40) 47px,var(--swap-border,#1c2a40) 48px); }
#swap-os-app .swap-os-week-hour { height:48px; border-bottom:1px solid transparent; }
#swap-os-app .swap-os-week-event { position:absolute; left:3px; right:3px; z-index:2; min-width:0; overflow:hidden; display:flex; flex-direction:column; align-items:flex-start; gap:3px; padding:4px 5px; border:0; border-left:3px solid var(--swap-accent,#4b82ff); border-radius:5px; background:rgba(75,130,255,.2); color:inherit; text-align:left; cursor:pointer; font-size:10px; }
#swap-os-app .swap-os-week-event:hover { filter:brightness(1.15); outline:1px solid var(--swap-accent,#4b82ff); }
#swap-os-app .swap-os-week-event b { max-width:100%; overflow:hidden; text-overflow:ellipsis; }
#swap-os-app .swap-os-week-event span { color:var(--swap-muted,#8da0bf); font-size:9px; }
#swap-os-app .swap-os-week-note { margin:10px 2px 0; color:var(--swap-muted,#8da0bf); font-size:11px; }

/* v9.1.0: create items directly from empty week time slots */
#swap-os-app .swap-os-week-slot { width:100%; display:flex; align-items:center; justify-content:flex-start; padding:0 5px; color:transparent; background:transparent; border:0; border-top:1px solid rgba(130,150,180,.13); cursor:pointer; text-align:left; }
#swap-os-app .swap-os-week-slot span { opacity:0; color:var(--swap-accent,#4b82ff); font-size:15px; line-height:1; }
#swap-os-app .swap-os-week-slot:hover { background:rgba(75,130,255,.09); outline:1px solid rgba(75,130,255,.35); }
#swap-os-app .swap-os-week-slot:hover span, #swap-os-app .swap-os-week-slot:focus-visible span { opacity:1; }
#swap-os-app .swap-os-week-event { z-index:2; }

/* v9.2.0: make overlapping existing calendar entries visible without moving them. */
#swap-os-app .swap-os-week-event.is-conflict { border-left-color:#ef4444; background:rgba(239,68,68,.22); outline:1px solid rgba(239,68,68,.75); }
#swap-os-app .swap-os-week-event.is-conflict span { color:#fecaca; }

/* v9.4.0: accessible drag-to-reschedule feedback */
.swap-os-week-event[draggable="true"]{cursor:grab;touch-action:pan-y}
.swap-os-week-event.is-dragging{opacity:.45;cursor:grabbing}
.swap-os-week-slot.is-drop-target{background:rgba(37,99,235,.16);outline:2px dashed #2563eb;outline-offset:-2px}

/* v9.5.0 touch-friendly week rescheduling controls */
.swap-os-week-move{position:absolute;right:3px;z-index:8;min-height:22px;padding:2px 6px;border:1px solid var(--swap-os-border,#cbd5e1);border-radius:6px;background:var(--swap-os-surface,#fff);color:var(--swap-os-text,#1e293b);font-size:10px;line-height:1.2;cursor:pointer;touch-action:manipulation}.swap-os-week-move[aria-pressed="true"]{background:var(--swap-os-primary,#2563eb);color:#fff;border-color:var(--swap-os-primary,#2563eb)}.swap-os-week-event.is-dragging{opacity:.55}.swap-os-week-slot.is-drop-target{outline:2px solid var(--swap-os-primary,#2563eb);outline-offset:-2px;background:rgba(37,99,235,.1)}@media(max-width:700px){.swap-os-week-move{min-height:28px;font-size:11px;right:2px;padding:4px 7px}}

/* v9.6.0: inline 15-minute duration controls for weekly Calendar blocks. */
#swap-os-app .swap-os-week-resize{position:absolute;left:5px;right:5px;z-index:9;display:flex;gap:3px;justify-content:flex-end;pointer-events:none}
#swap-os-app .swap-os-week-resize button{pointer-events:auto;min-height:22px;padding:2px 5px;border:1px solid var(--swap-os-border,#cbd5e1);border-radius:5px;background:var(--swap-os-surface,#fff);color:var(--swap-os-text,#1e293b);font-size:9px;line-height:1.2;cursor:pointer;touch-action:manipulation}
#swap-os-app .swap-os-week-resize button:disabled{opacity:.55;cursor:wait}
@media(max-width:700px){#swap-os-app .swap-os-week-resize button{min-height:28px;font-size:10px;padding:4px 6px}}

/* v9.7.0: configurable week range and occupancy legend */
#swap-os-app .swap-os-week-range-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 12px;padding:10px 12px;border:1px solid var(--swap-border,#1c2a40);border-radius:10px;background:rgba(255,255,255,.02)}
#swap-os-app .swap-os-week-range-controls label{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--swap-muted,#8da0bf)}
#swap-os-app .swap-os-week-range-controls select{padding:7px 9px;border:1px solid var(--swap-border,#1c2a40);border-radius:7px;background:var(--swap-card,#0d1524);color:inherit}
#swap-os-app .swap-os-week-legend{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:10px;color:var(--swap-muted,#8da0bf)}
#swap-os-app .swap-os-week-legend i{display:inline-block;width:9px;height:9px;border-radius:3px;background:rgba(75,130,255,.25);border:1px solid #4b82ff}
#swap-os-app .swap-os-week-legend i.is-busy{background:rgba(75,130,255,.55)}
#swap-os-app .swap-os-week-legend i.is-conflict{background:#ef4444;border-color:#ef4444}
#swap-os-app .swap-os-week-event.is-overnight{border-bottom:2px dashed #a78bfa}
#swap-os-app .swap-os-week-event.is-conflict{border-left-color:#ef4444;background:rgba(239,68,68,.2)}
#swap-os-app .swap-os-week-slot{position:relative}
#swap-os-app .swap-os-week-slot:focus-visible{outline:2px solid var(--swap-accent,#4b82ff);outline-offset:-2px}
@media(max-width:700px){#swap-os-app .swap-os-week-range-controls{align-items:flex-start}#swap-os-app .swap-os-week-legend{width:100%;margin-left:0}}


/* v9.8.0: 168-hour workload audit */
#swap-os-app .swap-os-workload-summary{margin:0 0 16px;padding:16px;border:1px solid var(--swap-border,#26334a);border-radius:14px;background:var(--swap-card,#0d1524)}
#swap-os-app .swap-os-workload-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
#swap-os-app .swap-os-workload-head h3{margin:4px 0 0;font-size:17px;color:var(--swap-text,#eef4ff)}
#swap-os-app .swap-os-workload-status{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:rgba(13,148,136,.13);color:#5eead4;font-size:11px;font-weight:700;white-space:nowrap}
#swap-os-app .swap-os-workload-status.is-high{background:rgba(245,158,11,.13);color:#fbbf24}
#swap-os-app .swap-os-workload-status.is-overloaded{background:rgba(239,68,68,.14);color:#fca5a5}
#swap-os-app .swap-os-workload-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
#swap-os-app .swap-os-workload-metrics article{min-width:0;padding:12px;border:1px solid var(--swap-border,#26334a);border-radius:10px;background:rgba(255,255,255,.018)}
#swap-os-app .swap-os-workload-metrics article span,#swap-os-app .swap-os-workload-metrics article small{display:block;color:var(--swap-muted,#8da0bf);font-size:11px;line-height:1.4}
#swap-os-app .swap-os-workload-metrics article strong{display:block;margin:7px 0;font-size:22px;line-height:1.15;color:var(--swap-text,#eef4ff);font-variant-numeric:tabular-nums}
#swap-os-app .swap-os-workload-note{margin:12px 0 0;color:var(--swap-muted,#8da0bf);font-size:11px;line-height:1.55}
@media(max-width:800px){#swap-os-app .swap-os-workload-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:440px){#swap-os-app .swap-os-workload-summary{padding:12px}#swap-os-app .swap-os-workload-metrics{gap:7px}#swap-os-app .swap-os-workload-metrics article{padding:9px}#swap-os-app .swap-os-workload-metrics article strong{font-size:19px}}

/* v9.9.0: context-aware weekly workload breakdown */
#swap-os-app .swap-os-context-breakdown{margin:0 0 16px;padding:16px;border:1px solid var(--swap-border,#26334a);border-radius:14px;background:var(--swap-card,#0d1524)}
#swap-os-app .swap-os-context-caption{color:var(--swap-muted,#8da0bf);font-size:11px}
#swap-os-app .swap-os-context-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#swap-os-app .swap-os-context-row{min-width:0;padding:11px;border:1px solid var(--swap-border,#26334a);border-radius:10px;background:rgba(255,255,255,.018)}
#swap-os-app .swap-os-context-row-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
#swap-os-app .swap-os-context-row-head strong{color:var(--swap-text,#eef4ff);font-size:12px}
#swap-os-app .swap-os-context-row-head span{color:var(--swap-text,#eef4ff);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}
#swap-os-app .swap-os-context-track{height:6px;overflow:hidden;border-radius:99px;background:rgba(148,163,184,.15)}
#swap-os-app .swap-os-context-track i{display:block;height:100%;border-radius:99px;background:var(--swap-accent,#60a5fa)}
#swap-os-app .swap-os-context-row small{display:block;margin-top:7px;color:var(--swap-muted,#8da0bf);font-size:10px}
#swap-os-app .swap-os-context-empty{margin:0;color:var(--swap-muted,#8da0bf);font-size:12px}
@media(max-width:560px){#swap-os-app .swap-os-context-list{grid-template-columns:minmax(0,1fr)}#swap-os-app .swap-os-context-breakdown{padding:12px}}
/* v10.1.0 task effort tracking */
.swap-os-task-effort{display:block;color:var(--swap-muted,#718096);font-size:11px;margin-top:3px}.swap-os-log-work{border:1px solid var(--swap-border,#d9e0ea);background:var(--swap-surface,#fff);border-radius:8px;padding:6px 9px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.swap-os-log-work:hover{border-color:var(--swap-accent,#6478ff)}.swap-os-log-work:disabled{opacity:.55;cursor:wait}


/* v10.4.0: explicit, user-approved replanning review */
.swap-os-replan-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.swap-os-replan-tools [role="status"]{font-size:12px;color:var(--swap-muted,#64748b)}.swap-os-replan-results{margin-top:12px;padding:12px;border:1px solid var(--swap-border,#dbe2ea);border-radius:12px;background:var(--swap-surface,#fff)}.swap-os-replan-results h4{margin:0 0 10px;font-size:14px}.swap-os-replan-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--swap-border,#e2e8f0)}.swap-os-replan-item>div{display:grid;gap:4px;min-width:0}.swap-os-replan-item strong{font-size:13px;overflow-wrap:anywhere}.swap-os-replan-item small,.swap-os-replan-empty{font-size:12px;color:var(--swap-muted,#64748b)}@media(max-width:640px){.swap-os-replan-item{align-items:flex-start;flex-direction:column}.swap-os-replan-item button{width:100%}}

/* v10.6.0: explicit recovery decisions remain compact and wrap on narrow screens. */
.swap-os-recovery-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.swap-os-recovery-actions .swap-os-outline-btn{font-size:12px;min-height:34px;padding:6px 10px}.swap-os-replan-item{align-items:flex-start}@media(max-width:640px){.swap-os-recovery-actions{width:100%}.swap-os-recovery-actions .swap-os-outline-btn{flex:1 1 42%;white-space:normal}}

.swap-os-recovery-history-filters{display:grid;grid-template-columns:minmax(160px,2fr) repeat(3,minmax(120px,1fr)) auto auto;gap:8px;align-items:end;margin:12px 0 16px;padding:12px;border:1px solid var(--swap-border,#dbe2ea);border-radius:10px;background:var(--swap-surface-soft,#f8fafc)}.swap-os-recovery-history-filters label{display:grid;gap:5px;font-size:12px;color:var(--swap-muted,#64748b)}.swap-os-recovery-history-filters input,.swap-os-recovery-history-filters select{width:100%;min-width:0;min-height:36px;border:1px solid var(--swap-border,#cbd5e1);border-radius:7px;padding:6px 8px;background:var(--swap-surface,#fff);color:var(--swap-text,#0f172a)}@media(max-width:760px){.swap-os-recovery-history-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.swap-os-recovery-history-filters label:first-child{grid-column:1/-1}.swap-os-recovery-history-filters button{width:100%}}


/* v10.9.0 focus recovery analytics */
#swap-os-app .swap-os-recovery-analytics-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 14px}
#swap-os-app .swap-os-recovery-analytics-summary article{display:grid;gap:6px;padding:12px;border:1px solid var(--swap-border,#dbe2ea);border-radius:10px;background:var(--swap-card,#fff);min-width:0}
#swap-os-app .swap-os-recovery-analytics-summary span{font-size:11px;color:var(--swap-muted,#64748b)}
#swap-os-app .swap-os-recovery-analytics-summary strong{font-size:22px;line-height:1.1;font-variant-numeric:tabular-nums}
#swap-os-app .swap-os-recovery-week{padding:10px 0;border-top:1px solid var(--swap-border,#e2e8f0)}
#swap-os-app .swap-os-recovery-week-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}
#swap-os-app .swap-os-recovery-week-head span{color:var(--swap-muted,#64748b)}
#swap-os-app .swap-os-recovery-week-track{height:7px;margin:8px 0;border-radius:99px;background:rgba(148,163,184,.16);overflow:hidden}
#swap-os-app .swap-os-recovery-week-track i{display:block;height:100%;border-radius:99px;background:var(--swap-accent,#60a5fa)}
#swap-os-app .swap-os-recovery-week-breakdown{display:flex;gap:6px 12px;flex-wrap:wrap;color:var(--swap-muted,#64748b);font-size:10px}
@media(max-width:640px){#swap-os-app .swap-os-recovery-analytics-summary{grid-template-columns:repeat(2,minmax(0,1fr))}#swap-os-app .swap-os-recovery-week-head{align-items:flex-start;flex-direction:column}}

/* v10.10.0 task-to-focus accounting audit */
#swap-os-app .swap-os-accounting-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
#swap-os-app .swap-os-accounting-flags{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
#swap-os-app .swap-os-accounting-flag{display:inline-flex;padding:4px 7px;border-radius:6px;background:#fff4e5;color:#8a4b08;border:1px solid #f2d2a6;font-size:11px;line-height:1.35}
@media(max-width:640px){#swap-os-app .swap-os-accounting-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v10.18.0 — accessible central Calendar Create menu */
#swap-os-app .swap-os-create-wrap{position:relative;display:flex;justify-content:flex-end;align-items:center;min-width:0}
#swap-os-app .swap-os-create-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 16px;border-radius:10px;box-shadow:0 5px 18px rgba(124,58,237,.22);white-space:nowrap}
#swap-os-app .swap-os-create-trigger[aria-expanded="true"] .swap-os-create-chevron{transform:rotate(180deg)}
#swap-os-app .swap-os-create-chevron{display:inline-block;transition:transform .15s ease}
#swap-os-app .swap-os-create-menu{position:absolute;z-index:1000;top:calc(100% + 8px);right:0;width:min(290px,calc(100vw - 40px));padding:6px;background:var(--so-panel,#101827);border:1px solid var(--so-border,#263449);border-radius:12px;box-shadow:0 16px 40px rgba(0,0,0,.32)}
#swap-os-app .swap-os-create-menu[hidden]{display:none!important}
#swap-os-app .swap-os-create-menu button{display:flex;width:100%;align-items:center;gap:11px;padding:10px;border:0;border-radius:8px;background:transparent;color:var(--so-text,#edf2fb);text-align:left;cursor:pointer}
#swap-os-app .swap-os-create-menu button:hover,#swap-os-app .swap-os-create-menu button:focus-visible{background:rgba(124,58,237,.14);outline:2px solid rgba(124,58,237,.65);outline-offset:-2px}
#swap-os-app .swap-os-create-menu-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:9px;background:rgba(124,58,237,.14);color:#a78bfa;font-size:17px}
#swap-os-app .swap-os-create-menu button strong,#swap-os-app .swap-os-create-menu button small{display:block}
#swap-os-app .swap-os-create-menu button strong{font-size:12px;font-weight:650}
#swap-os-app .swap-os-create-menu button small{margin-top:3px;color:var(--so-muted,#94a3b8);font-size:10px;font-weight:400}
#swap-os-app.swap-os-light .swap-os-create-menu{background:#fff;border-color:#d9e1ef;box-shadow:0 16px 40px rgba(15,23,42,.16)}
#swap-os-app.swap-os-light .swap-os-create-menu button{color:#172033}
@media(max-width:700px){#swap-os-app .swap-os-create-wrap{width:100%;justify-content:flex-start}#swap-os-app .swap-os-create-trigger{width:100%;min-height:44px}#swap-os-app .swap-os-create-menu{left:0;right:auto;width:100%}}

/* v10.19.0 — task creation modal readability and responsive layout */
#swap-os-app #swapOsModal .swap-os-modal{width:min( min(100%, 560px), calc(100vw - 40px));padding:28px 30px;border-radius:18px;}
#swap-os-app #swapOsModal .swap-os-panel-kicker{font-size:10px;letter-spacing:.13em;}
#swap-os-app #swapOsModal h2{font-size:25px;line-height:1.2;margin:9px 0 8px;}
#swap-os-app #swapOsModal>section>p{font-size:13px;line-height:1.55;margin-bottom:22px;}
#swap-os-app #swapOsModal #swapOsTaskForm{gap:10px;}
#swap-os-app #swapOsModal #swapOsTaskForm>label,#swap-os-app #swapOsModal .swap-os-task-form-grid label{display:block;font-size:12px;font-weight:600;line-height:1.4;margin-top:8px;}
#swap-os-app #swapOsModal #swapOsTaskForm input,#swap-os-app #swapOsModal #swapOsTaskForm select{min-height:42px;padding:11px 12px;font-size:13px;border-radius:9px;}
#swap-os-app #swapOsModal .swap-os-task-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
#swap-os-app #swapOsModal .swap-os-slot-suggestions{padding:15px;margin-top:12px;border-radius:12px;}
#swap-os-app #swapOsModal .swap-os-slot-head b{font-size:13px;}
#swap-os-app #swapOsModal .swap-os-slot-suggestions>p{font-size:11px;line-height:1.55;}
#swap-os-app #swapOsModal .swap-os-empty{font-size:12px;padding:18px 8px;}
#swap-os-app #swapOsModal .swap-os-modal-actions{gap:12px;margin-top:18px;}
#swap-os-app #swapOsModal .swap-os-modal-actions button{min-height:42px;font-size:12px;padding:11px 14px;}
@media(max-width:700px){#swap-os-app #swapOsModal .swap-os-modal{width:100%;max-width:none;max-height:92dvh;overflow:auto;padding:24px 18px calc(22px + env(safe-area-inset-bottom,0px));border-radius:22px 22px 0 0;}#swap-os-app #swapOsModal h2{font-size:23px;}#swap-os-app #swapOsModal .swap-os-task-form-grid{grid-template-columns:minmax(0,1fr);gap:8px;}#swap-os-app #swapOsModal .swap-os-modal-actions{position:sticky;bottom:calc(-22px - env(safe-area-inset-bottom,0px));padding:12px 0 calc(8px + env(safe-area-inset-bottom,0px));background:linear-gradient(180deg,transparent,var(--so-panel) 20%);}}

/* v10.20.0 — task modal keyboard and async-state accessibility */
#swap-os-app #swapOsModal .swap-os-modal{max-height:min(92dvh,900px);overflow-y:auto;overscroll-behavior:contain;}
#swap-os-app #swapOsModal .swap-os-modal :focus-visible{outline:2px solid #8b7cff;outline-offset:3px;}
#swap-os-app #swapOsModal #swapOsFindTaskSlots[disabled]{opacity:.65;cursor:wait;}
#swap-os-app #swapOsModal #swapOsTaskSlotResults[aria-busy="true"]{opacity:.82;}
@media(prefers-reduced-motion:reduce){#swap-os-app #swapOsModal *,#swap-os-app #swapOsModal *::before,#swap-os-app #swapOsModal *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important;}}

/* v10.21.0: persistent task-save feedback */
.swap-os-task-save-status{margin:10px 0;padding:10px 12px;border:1px solid var(--swap-os-border, #293449);border-radius:10px;font-size:13px;line-height:1.5;color:var(--swap-os-muted, #b7c2d5)}
.swap-os-task-save-status:empty{display:none}
.swap-os-task-save-status.is-error{border-color:#ef7777;background:rgba(239,119,119,.09);color:#ffc0c0}
.swap-os-task-save-status.is-success{border-color:#36b987;background:rgba(54,185,135,.09);color:#9be7c7}
.swap-os-task-save-status.is-warning{border-color:#e6aa54;background:rgba(230,170,84,.09);color:#ffd69a}


/* v10.34.0 — Daily Plan: grounded in saved tasks, with no automatic scheduling. */
#swap-os-app .swap-os-command-daily{grid-area:daily;min-width:0;}
#swap-os-app .swap-os-daily-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:15px 0 13px;}
#swap-os-app .swap-os-daily-metrics>div{display:grid;gap:4px;padding:10px 8px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:rgba(255,255,255,.025);min-width:0;}
#swap-os-app .swap-os-daily-metrics strong{font-size:19px;line-height:1.1;color:#f5f3ff;font-variant-numeric:tabular-nums;}
#swap-os-app .swap-os-daily-metrics span{font-size:9px;color:#8c8da4;white-space:nowrap;}
#swap-os-app .swap-os-daily-metrics .is-warning strong{color:#ffb66d;}
#swap-os-app .swap-os-daily-list{display:grid;gap:12px;}
#swap-os-app .swap-os-daily-group{display:grid;gap:6px;min-width:0;}
#swap-os-app .swap-os-daily-group-head{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:7px;padding:2px 2px 4px;}
#swap-os-app .swap-os-daily-group-head strong{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:#e8e5f6;}
#swap-os-app .swap-os-daily-group-head span{font-size:9px;color:#a8a6bc;background:rgba(255,255,255,.06);border-radius:999px;padding:3px 6px;}
#swap-os-app .swap-os-daily-group-head small{font-size:9px;color:#85869d;text-align:right;}
#swap-os-app .swap-os-daily-group.is-overdue .swap-os-daily-group-head strong{color:#ffb66d;}
#swap-os-app .swap-os-daily-group.is-today .swap-os-daily-group-head strong{color:#8edecb;}
#swap-os-app .swap-os-daily-group.is-upcoming .swap-os-daily-group-head strong{color:#aebdff;}
@media(max-width:520px){#swap-os-app .swap-os-daily-group-head{grid-template-columns:auto auto;gap:6px;}#swap-os-app .swap-os-daily-group-head small{grid-column:1/-1;text-align:left;}}

#swap-os-app .swap-os-daily-task{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border:1px solid rgba(255,255,255,.06);border-radius:11px;background:rgba(255,255,255,.025);color:inherit;text-align:left;cursor:pointer;min-width:0;}
#swap-os-app .swap-os-daily-task:hover{border-color:rgba(153,105,255,.32);background:rgba(134,77,255,.07);}
#swap-os-app .swap-os-daily-task-mark{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:9px;background:rgba(91,205,177,.12);color:#7de0c0;font-weight:800;}
#swap-os-app .swap-os-daily-task-mark.is-high{background:rgba(255,176,91,.14);color:#ffc17d;}
#swap-os-app .swap-os-daily-task-copy{display:grid;gap:4px;min-width:0;flex:1;}
#swap-os-app .swap-os-daily-task-copy strong{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#efedf8;}
#swap-os-app .swap-os-daily-task-copy small{font-size:9px;color:#9293a8;}
#swap-os-app .swap-os-daily-task-copy small.is-overdue{color:#ffb66d;}
#swap-os-app .swap-os-daily-task-arrow{color:#898aa4;font-size:13px;}
#swap-os-app .swap-os-command-card:focus{outline:2px solid #8b72ff;outline-offset:3px;}
#swap-os-app.swap-os-light .swap-os-daily-metrics>div,#swap-os-app.swap-os-light .swap-os-daily-task{background:rgba(20,20,40,.025);border-color:rgba(0,0,0,.08);}
#swap-os-app.swap-os-light .swap-os-daily-metrics strong,#swap-os-app.swap-os-light .swap-os-daily-task-copy strong{color:#171722;}
#swap-os-app.swap-os-light .swap-os-daily-metrics span,#swap-os-app.swap-os-light .swap-os-daily-task-copy small{color:#737387;}
@media(max-width:1180px){#swap-os-app .swap-os-command-grid{grid-template-areas:"hero hero" "daily daily" "events calendar" "projects calendar" "focus quick";}}
@media(max-width:760px){#swap-os-app .swap-os-command-grid{grid-template-areas:"hero" "daily" "events" "calendar" "projects" "focus" "quick";}#swap-os-app .swap-os-daily-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}#swap-os-app .swap-os-daily-task{padding:11px 9px;}}


/* v10.35.0 — Calendar-aware daily planning. */
#swap-os-app .swap-os-planning-windows{margin:12px 0 14px;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:linear-gradient(135deg,rgba(125,83,255,.075),rgba(255,255,255,.015));min-width:0}
#swap-os-app .swap-os-planning-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
#swap-os-app .swap-os-planning-head h4{margin:3px 0 0;font-size:13px;color:#f4f1ff}
#swap-os-app .swap-os-planning-head>span{font-size:9px;color:#9a9bb1;text-align:right}
#swap-os-app .swap-os-planning-timeline{display:grid;gap:7px}
#swap-os-app .swap-os-planning-events{display:grid;gap:7px}
#swap-os-app .swap-os-planning-event{display:flex;align-items:flex-start;gap:9px;min-width:0}
#swap-os-app .swap-os-planning-dot{width:7px;height:7px;flex:0 0 7px;margin-top:4px;border-radius:50%;background:#9c7aff;box-shadow:0 0 0 3px rgba(156,122,255,.12)}
#swap-os-app .swap-os-planning-event>span:last-child{display:grid;gap:3px;min-width:0}
#swap-os-app .swap-os-planning-event b{font-size:10px;font-weight:650;color:#eeecf8;overflow-wrap:anywhere}
#swap-os-app .swap-os-planning-event small,.swap-os-planning-more{font-size:9px;color:#9293a9}
#swap-os-app .swap-os-free-window-list{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:10px;padding-top:9px;border-top:1px solid rgba(255,255,255,.07)}
#swap-os-app .swap-os-free-window-label{width:100%;font-size:9px;color:#9293a9;margin-bottom:1px}
#swap-os-app .swap-os-free-window{font-size:9px;padding:5px 7px;border:1px solid rgba(85,207,172,.18);border-radius:7px;background:rgba(85,207,172,.07);color:#9ce6cb}
#swap-os-app .swap-os-focus-suggestions{margin-top:9px}
#swap-os-app .swap-os-focus-suggestion{display:flex;align-items:center;gap:8px;padding:9px;border-radius:10px;background:rgba(131,95,255,.09);border:1px solid rgba(131,95,255,.18);min-width:0}
#swap-os-app .swap-os-focus-suggestion-icon{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border-radius:8px;background:rgba(143,109,255,.16);color:#bca8ff}
#swap-os-app .swap-os-focus-suggestion-copy{display:grid;gap:3px;flex:1;min-width:0}
#swap-os-app .swap-os-focus-suggestion-copy b{font-size:10px;color:#f0ecff}
#swap-os-app .swap-os-focus-suggestion-copy small{font-size:9px;color:#a7a2c2;overflow-wrap:anywhere}
#swap-os-app .swap-os-planning-empty{font-size:10px;line-height:1.5;color:#9a9bb0;padding:8px 0}
#swap-os-app .swap-os-planning-note{font-size:9px;line-height:1.5;color:#7f8097;margin:9px 0 0}
#swap-os-app.swap-os-light .swap-os-planning-windows{background:rgba(90,70,170,.035);border-color:rgba(0,0,0,.09)}
#swap-os-app.swap-os-light .swap-os-planning-head h4,#swap-os-app.swap-os-light .swap-os-planning-event b,#swap-os-app.swap-os-light .swap-os-focus-suggestion-copy b{color:#242136}
#swap-os-app.swap-os-light .swap-os-planning-event small,#swap-os-app.swap-os-light .swap-os-planning-more,#swap-os-app.swap-os-light .swap-os-planning-empty,#swap-os-app.swap-os-light .swap-os-planning-note{color:#737187}
@media(max-width:480px){#swap-os-app .swap-os-planning-windows{padding:10px}#swap-os-app .swap-os-focus-suggestion{align-items:flex-start;flex-wrap:wrap}#swap-os-app .swap-os-focus-suggestion .swap-os-text-btn{margin-left:33px}}

/* v10.36.0 — Interactive, explicit focus-slot confirmation. */
#swap-os-app .swap-os-focus-schedule-btn{flex:0 0 auto;white-space:nowrap;padding:8px 11px;font-size:10px;border-radius:9px;cursor:pointer}
#swap-os-app .swap-os-focus-schedule-btn:disabled{opacity:.65;cursor:wait}
#swap-os-app .swap-os-focus-picker-backdrop{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:18px;background:rgba(7,8,18,.72);backdrop-filter:blur(8px)}
#swap-os-app .swap-os-focus-picker-backdrop[hidden]{display:none!important}
#swap-os-app .swap-os-focus-picker{position:relative;width:min(100%,480px);max-height:min(82vh,720px);overflow:auto;padding:24px;border:1px solid rgba(170,151,255,.25);border-radius:20px;background:#171724;color:#f4f1ff;box-shadow:0 24px 90px rgba(0,0,0,.45)}
#swap-os-app .swap-os-focus-picker-close{position:absolute;right:14px;top:12px;width:34px;height:34px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(255,255,255,.05);color:inherit;font-size:23px;cursor:pointer}
#swap-os-app .swap-os-focus-picker h3{margin:8px 40px 8px 0;font-size:20px;line-height:1.3;color:inherit}
#swap-os-app .swap-os-focus-picker>p{margin:0 0 14px;color:#a7a5bd;font-size:12px;line-height:1.55}
#swap-os-app .swap-os-focus-picker-status{margin:12px 0;padding:10px 12px;border-radius:10px;background:rgba(139,114,255,.09);color:#c8c0f5;font-size:11px;line-height:1.5}
#swap-os-app .swap-os-focus-picker-options{display:grid;gap:8px}
#swap-os-app .swap-os-focus-slot-option{display:flex;align-items:center;gap:11px;width:100%;padding:13px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.025);color:inherit;text-align:left;cursor:pointer}
#swap-os-app .swap-os-focus-slot-option:hover,#swap-os-app .swap-os-focus-slot-option:focus-visible{border-color:#8d78ff;background:rgba(139,114,255,.1);outline:2px solid rgba(139,114,255,.3);outline-offset:1px}
#swap-os-app .swap-os-focus-slot-option:disabled{opacity:.6;cursor:wait}
#swap-os-app .swap-os-focus-slot-radio{width:17px;height:17px;flex:0 0 17px;border:1.5px solid #8f84bd;border-radius:50%}
#swap-os-app .swap-os-focus-slot-option.is-saving .swap-os-focus-slot-radio{border:4px solid #a995ff}
#swap-os-app .swap-os-focus-slot-copy{display:grid;gap:4px;flex:1;min-width:0}
#swap-os-app .swap-os-focus-slot-copy b{font-size:12px;color:#f3efff}
#swap-os-app .swap-os-focus-slot-copy small{font-size:10px;color:#a7a2c2}
#swap-os-app .swap-os-focus-slot-arrow{font-size:23px;color:#a995ff}
#swap-os-app .swap-os-focus-picker-footer{display:flex;justify-content:flex-end;margin-top:14px}
#swap-os-app.swap-os-light .swap-os-focus-picker{background:#fff;color:#201c32;border-color:rgba(70,50,140,.18)}
#swap-os-app.swap-os-light .swap-os-focus-picker>p,#swap-os-app.swap-os-light .swap-os-focus-slot-copy small{color:#6e6982}
#swap-os-app.swap-os-light .swap-os-focus-slot-copy b{color:#201c32}
@media(max-width:520px){#swap-os-app .swap-os-focus-picker-backdrop{align-items:end;padding:0}#swap-os-app .swap-os-focus-picker{width:100%;max-height:88vh;border-radius:20px 20px 0 0;padding:22px 16px calc(18px + env(safe-area-inset-bottom));}#swap-os-app .swap-os-focus-suggestion{align-items:flex-start;flex-wrap:wrap}#swap-os-app .swap-os-focus-schedule-btn{margin-left:33px}}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-focus-picker-backdrop{backdrop-filter:none}}


/* v10.39.0 — personal Projects Command Center */
#swap-os-app .swap-os-project-command-intro { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:22px 24px; margin:0 0 14px; border:1px solid rgba(85,133,255,.25); border-radius:18px; background:radial-gradient(ellipse at 92% 0%,rgba(83,91,255,.17),transparent 46%),linear-gradient(135deg,rgba(13,28,53,.94),rgba(7,15,30,.92)); }
#swap-os-app .swap-os-project-command-intro h2 { margin:5px 0 6px; font-size:clamp(21px,2.6vw,30px); letter-spacing:-.035em; }
#swap-os-app .swap-os-project-command-intro p { margin:0; color:var(--swap-muted,#8da0bf); font-size:13px; }
#swap-os-app .swap-os-project-command-mark { display:grid; place-items:center; width:58px; height:58px; flex:0 0 58px; border:1px solid rgba(139,92,246,.45); border-radius:18px; color:#c4b5fd; font-size:29px; background:linear-gradient(145deg,rgba(91,70,255,.22),rgba(0,197,255,.08)); box-shadow:0 0 32px rgba(92,76,255,.13); }
#swap-os-app .swap-os-project-health { margin:0 0 18px; padding:16px; border:1px solid rgba(139,124,255,.24); border-radius:16px; background:linear-gradient(145deg,rgba(20,30,53,.84),rgba(7,14,27,.82)); box-shadow:inset 0 1px 0 rgba(255,255,255,.035); }
#swap-os-app .swap-os-project-health-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:13px; }
#swap-os-app .swap-os-project-health-head h3 { margin:4px 0 3px; font-size:17px; letter-spacing:-.025em; }
#swap-os-app .swap-os-project-health-head p { margin:0; color:var(--swap-muted,#8da0bf); font-size:12px; }
#swap-os-app .swap-os-project-health-state { flex:0 0 auto; padding:7px 10px; border-radius:999px; border:1px solid rgba(52,211,153,.24); color:#6ee7b7; background:rgba(16,185,129,.08); font-size:11px; font-weight:700; }
#swap-os-app .swap-os-project-health-state.has-attention { border-color:rgba(251,146,60,.3); color:#fdba74; background:rgba(249,115,22,.09); }
#swap-os-app .swap-os-project-health-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; }
#swap-os-app .swap-os-project-health-grid article { min-width:0; display:flex; flex-direction:column; gap:5px; padding:12px; border:1px solid var(--swap-border,#1c2a40); border-radius:12px; background:rgba(5,12,24,.45); }
#swap-os-app .swap-os-project-health-grid article > span { color:var(--swap-muted,#8da0bf); font-size:11px; }
#swap-os-app .swap-os-project-health-grid article strong { font-size:24px; line-height:1.1; letter-spacing:-.04em; }
#swap-os-app .swap-os-project-health-grid article small { color:var(--swap-muted,#8da0bf); font-size:10px; }
#swap-os-app .swap-os-project-health-grid article.has-attention strong { color:#fdba74; }
#swap-os-app .swap-os-project-health-next { display:flex; align-items:center; gap:10px; margin-top:10px; padding:10px 12px; border-radius:11px; background:rgba(139,124,255,.07); }
#swap-os-app .swap-os-project-health-next-icon { display:grid; place-items:center; width:30px; height:30px; border-radius:9px; color:#c4b5fd; background:rgba(139,124,255,.13); }
#swap-os-app .swap-os-project-health-next > span:nth-child(2) { display:flex; flex:1; flex-direction:column; gap:3px; min-width:0; }
#swap-os-app .swap-os-project-health-next small { color:var(--swap-muted,#8da0bf); font-size:9px; letter-spacing:.08em; }
#swap-os-app .swap-os-project-health-next strong { overflow:hidden; text-overflow:ellipsis; font-size:12px; }
#swap-os-app .swap-os-project-health-next-date { color:#c4b5fd; font-size:11px; white-space:nowrap; }
@media(max-width:650px) { #swap-os-app .swap-os-project-health { padding:12px; } #swap-os-app .swap-os-project-health-head { flex-direction:column; } #swap-os-app .swap-os-project-health-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } #swap-os-app .swap-os-project-health-grid article { padding:10px; } #swap-os-app .swap-os-project-health-grid article strong { font-size:22px; } #swap-os-app .swap-os-project-health-next { align-items:flex-start; } #swap-os-app .swap-os-project-health-next-date { margin-left:auto; } }
#swap-os-app .swap-os-project-metrics { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin:0 0 18px; }
#swap-os-app .swap-os-project-metrics article { display:flex; flex-direction:column; gap:9px; min-width:0; padding:14px 16px; border:1px solid var(--swap-border,#1c2a40); border-radius:13px; background:linear-gradient(145deg,rgba(18,31,53,.76),rgba(7,15,28,.74)); }
#swap-os-app .swap-os-project-metrics article span { color:var(--swap-muted,#8da0bf); font-size:11px; }
#swap-os-app .swap-os-project-metrics article strong { font-size:25px; letter-spacing:-.04em; }
#swap-os-app .swap-os-projects-toolbar { align-items:center; }
#swap-os-app .swap-os-project-search { display:flex; align-items:center; gap:9px; min-width:min(100%,250px); flex:1; padding:0 12px; border:1px solid var(--swap-border,#1c2a40); border-radius:11px; background:rgba(5,12,24,.62); color:var(--swap-muted,#8da0bf); }
#swap-os-app .swap-os-project-search > span { font-size:23px; }
#swap-os-app .swap-os-project-search input { width:100%; min-width:0; padding:11px 0; border:0; outline:0; background:transparent; color:var(--swap-text,#eaf0ff); }
#swap-os-app .swap-os-project-toolbar-right { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
#swap-os-app .swap-os-project-view-switch { display:flex; align-items:center; gap:6px; padding-bottom:12px; margin-bottom:14px; border-bottom:1px solid var(--swap-border,#1c2a40); }
#swap-os-app .swap-os-project-view-switch button { padding:9px 13px; border:1px solid transparent; border-radius:9px; background:transparent; color:var(--swap-muted,#8da0bf); cursor:pointer; font-size:12px; }
#swap-os-app .swap-os-project-view-switch button.is-active { border-color:rgba(92,110,255,.35); background:linear-gradient(135deg,rgba(96,67,255,.22),rgba(0,184,255,.08)); color:var(--swap-text,#eaf0ff); }
#swap-os-app .swap-os-project-view-switch #swapOsProjectResultCount { margin-left:auto; color:var(--swap-muted,#8da0bf); font-size:11px; }
#swap-os-app .swap-os-project-type { margin-right:auto; color:#92a8ce; font-size:9px; letter-spacing:.08em; }
#swap-os-app .swap-os-project-card-foot { display:flex; justify-content:space-between; gap:8px; margin-top:15px; padding-top:12px; border-top:1px solid rgba(132,158,201,.12); color:var(--swap-muted,#8da0bf); font-size:10px; }
#swap-os-app .swap-os-project-card-foot > span:first-child { display:flex; align-items:center; gap:6px; }
#swap-os-app .swap-os-project-card-foot i { width:6px; height:6px; border-radius:50%; background:#60a5fa; }
#swap-os-app .swap-os-projects-workspace-grid.is-list-view { display:block; }
#swap-os-app .swap-os-project-list-view { overflow:hidden; border:1px solid var(--swap-border,#1c2a40); border-radius:13px; }
#swap-os-app .swap-os-project-list-head,#swap-os-app .swap-os-project-list-row { display:grid; grid-template-columns:minmax(180px,2fr) minmax(100px,.9fr) minmax(120px,1fr) 75px; align-items:center; gap:14px; padding:13px 16px; }
#swap-os-app .swap-os-project-list-head { color:var(--swap-muted,#8da0bf); background:rgba(255,255,255,.025); font-size:10px; text-transform:uppercase; letter-spacing:.06em; }
#swap-os-app .swap-os-project-list-row { border-top:1px solid rgba(132,158,201,.12); font-size:12px; }
#swap-os-app .swap-os-project-list-name { display:flex; align-items:center; gap:10px; min-width:0; }
#swap-os-app .swap-os-project-list-name > span:last-child { display:flex; flex-direction:column; gap:4px; min-width:0; }
#swap-os-app .swap-os-project-list-name b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#swap-os-app .swap-os-project-list-name small { color:var(--swap-muted,#8da0bf); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#swap-os-app .swap-os-project-list-icon { display:grid; place-items:center; width:34px; height:34px; flex:0 0 34px; border-radius:10px; background:rgba(79,112,255,.16); color:#9eb9ff; }
#swap-os-app .swap-os-list-progress { display:flex; align-items:center; gap:9px; }
#swap-os-app .swap-os-list-progress i { height:5px; flex:1; overflow:hidden; border-radius:9px; background:rgba(255,255,255,.08); }
#swap-os-app .swap-os-list-progress i span { display:block; height:100%; border-radius:9px; background:linear-gradient(90deg,#00d4ff,#7c5cff); }
#swap-os-app .swap-os-projects-workspace-grid.is-kanban-view { grid-template-columns:repeat(4,minmax(0,1fr)); align-items:start; gap:10px; }
#swap-os-app .swap-os-project-kanban-column { min-width:0; padding:10px; border:1px solid var(--swap-border,#1c2a40); border-radius:13px; background:rgba(4,11,23,.35); }
#swap-os-app .swap-os-project-kanban-column > header { display:flex; align-items:center; gap:8px; padding:5px 3px 12px; font-size:11px; }
#swap-os-app .swap-os-project-kanban-column > header > span:last-child { margin-left:auto; color:var(--swap-muted,#8da0bf); }
#swap-os-app .swap-os-kanban-dot { width:7px; height:7px; border-radius:50%; background:#a78bfa; }
#swap-os-app .dot-active { background:#34d399; } #swap-os-app .dot-on_hold { background:#fbbf24; } #swap-os-app .dot-completed { background:#22d3ee; }
#swap-os-app .swap-os-project-kanban-items { display:grid; gap:9px; }
#swap-os-app .swap-os-project-kanban-items .swap-os-project-workspace-card { padding:12px; }
#swap-os-app .swap-os-project-kanban-items .swap-os-project-workspace-card h3 { font-size:13px; }
#swap-os-app .swap-os-project-kanban-items .swap-os-project-workspace-card p { min-height:0; margin-bottom:14px; font-size:11px; }
#swap-os-app .swap-os-project-kanban-items .swap-os-project-type { display:none; }
#swap-os-app .swap-os-kanban-empty { margin:0; padding:18px 4px; color:var(--swap-muted,#8da0bf); font-size:11px; text-align:center; }
@media(max-width:900px) { #swap-os-app .swap-os-project-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); } #swap-os-app .swap-os-projects-workspace-grid.is-kanban-view { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) { #swap-os-app .swap-os-project-command-intro { padding:17px; border-radius:14px; } #swap-os-app .swap-os-project-command-mark { width:44px; height:44px; flex-basis:44px; border-radius:13px; font-size:23px; } #swap-os-app .swap-os-project-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; } #swap-os-app .swap-os-project-metrics article { padding:12px; } #swap-os-app .swap-os-project-metrics article strong { font-size:22px; } #swap-os-app .swap-os-project-toolbar-right { width:100%; } #swap-os-app .swap-os-projects-filters { width:100%; overflow-x:auto; flex-wrap:nowrap; } #swap-os-app .swap-os-projects-filters button { flex:0 0 auto; } #swap-os-app .swap-os-project-toolbar-right > .swap-os-primary-btn { width:100%; } #swap-os-app .swap-os-project-view-switch { overflow-x:auto; } #swap-os-app .swap-os-project-view-switch button { flex:0 0 auto; } #swap-os-app .swap-os-projects-workspace-grid.is-kanban-view { grid-template-columns:1fr; } #swap-os-app .swap-os-project-list-head { display:none; } #swap-os-app .swap-os-project-list-row { grid-template-columns:minmax(0,1fr) auto; gap:10px; padding:13px; } #swap-os-app .swap-os-project-list-row > .swap-os-project-status { justify-self:end; } #swap-os-app .swap-os-list-progress { grid-column:1; } #swap-os-app .swap-os-project-list-row > .swap-os-project-edit { grid-column:2; grid-row:2; } }

#swap-os-app .swap-os-project-status.status-on_hold { background:rgba(245,158,11,.12); color:#f5c46b; }

/* SWAP OS v10.40.0 — personal project milestones */
#swap-os-app .swap-os-project-milestones-panel { margin-top:18px; padding:20px; border:1px solid rgba(87,126,205,.24); border-radius:18px; background:linear-gradient(145deg,rgba(10,23,43,.88),rgba(5,13,27,.92)); box-shadow:0 14px 36px rgba(0,0,0,.12); }
#swap-os-app .swap-os-project-milestones-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px; }
#swap-os-app .swap-os-project-milestones-head h2 { margin:5px 0; font-size:20px; letter-spacing:-.025em; }
#swap-os-app .swap-os-project-milestones-head p { margin:0; color:var(--swap-muted,#8da0bf); font-size:13px; }
#swap-os-app .swap-os-milestone-toolbar { display:flex; gap:12px; margin-bottom:12px; }
#swap-os-app .swap-os-milestone-toolbar label { display:flex; align-items:center; gap:9px; color:var(--swap-muted,#8da0bf); font-size:12px; }
#swap-os-app .swap-os-milestone-toolbar select, #swap-os-app .swap-os-project-milestone-row select { max-width:100%; padding:9px 11px; border:1px solid rgba(105,143,208,.25); border-radius:10px; background:#0a172a; color:#e9f1ff; }
#swap-os-app .swap-os-project-milestone-list { display:grid; gap:8px; }
#swap-os-app .swap-os-project-milestone-row { display:grid; grid-template-columns:10px minmax(0,1fr) auto auto auto; align-items:center; gap:12px; padding:12px; border:1px solid rgba(104,137,194,.16); border-radius:12px; background:rgba(11,24,44,.62); }
#swap-os-app .swap-os-milestone-status-dot { width:9px; height:9px; border-radius:50%; background:#f4b942; box-shadow:0 0 12px rgba(244,185,66,.3); }
#swap-os-app .swap-os-milestone-status-dot.is-in_progress { background:#38bdf8; box-shadow:0 0 12px rgba(56,189,248,.35); }
#swap-os-app .swap-os-milestone-status-dot.is-completed { background:#34d399; box-shadow:0 0 12px rgba(52,211,153,.35); }
#swap-os-app .swap-os-project-milestone-info { min-width:0; display:grid; gap:4px; }
#swap-os-app .swap-os-project-milestone-info strong { overflow-wrap:anywhere; font-size:13px; }
#swap-os-app .swap-os-project-milestone-info small { color:var(--swap-muted,#8da0bf); font-size:11px; }
@media(max-width:650px) { #swap-os-app .swap-os-project-milestones-panel { padding:14px; } #swap-os-app .swap-os-project-milestones-head { align-items:flex-start; flex-direction:column; } #swap-os-app .swap-os-project-milestones-head .swap-os-primary-btn { width:100%; } #swap-os-app .swap-os-milestone-toolbar { flex-direction:column; } #swap-os-app .swap-os-milestone-toolbar label { align-items:flex-start; flex-direction:column; } #swap-os-app .swap-os-milestone-toolbar select { width:100%; } #swap-os-app .swap-os-project-milestone-row { grid-template-columns:9px minmax(0,1fr) auto; gap:8px; } #swap-os-app .swap-os-project-milestone-row select { grid-column:2; justify-self:start; } #swap-os-app .swap-os-project-milestone-row [data-edit-milestone] { grid-column:3; grid-row:1; } #swap-os-app .swap-os-project-milestone-row [data-delete-milestone] { grid-column:3; grid-row:2; } }

/* v10.43.0 — project execution summary */
.swap-os-project-linked-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:14px 0 4px;padding:10px 0;border-top:1px solid rgba(148,163,184,.14)}
.swap-os-project-linked-stats span{display:flex;flex-direction:column;gap:3px;color:var(--swap-muted,#94a3b8);font-size:11px;line-height:1.35}
.swap-os-project-linked-stats strong{color:var(--swap-text,#f8fafc);font-size:15px;font-weight:650}
@media(max-width:560px){.swap-os-project-linked-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.swap-os-project-linked-stats span{font-size:12px}}

/* v10.44.0 Project Details workspace */
#swap-os-app .swap-os-project-open-details { width:100%; display:flex; justify-content:space-between; align-items:center; margin-top:16px; }
#swap-os-app .swap-os-project-details-backdrop { z-index:10020; }
#swap-os-app .swap-os-project-details-modal { width:min(920px, calc(100vw - 28px)); max-width:920px; max-height:min(88vh, 900px); overflow:auto; }
#swap-os-app .swap-os-project-details-modal h2 { margin:8px 42px 8px 0; font-size:clamp(23px,3vw,32px); }
#swap-os-app .swap-os-project-details-description { color:var(--swap-muted,#8da0bf); margin:0 0 22px; }
#swap-os-app .swap-os-project-detail-progress { padding:16px; border:1px solid var(--swap-border,#1c2a40); border-radius:14px; background:rgba(255,255,255,.025); margin-bottom:20px; }
#swap-os-app .swap-os-project-detail-progress > div:first-child { display:flex; justify-content:space-between; gap:12px; margin-bottom:10px; }
#swap-os-app .swap-os-project-detail-progress small { display:block; color:var(--swap-muted,#8da0bf); margin-top:10px; }
#swap-os-app .swap-os-project-detail-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
#swap-os-app .swap-os-project-detail-columns section { min-width:0; border:1px solid var(--swap-border,#1c2a40); border-radius:14px; padding:14px; }
#swap-os-app .swap-os-project-detail-columns section > header { display:flex; align-items:center; gap:10px; margin-bottom:10px; }
#swap-os-app .swap-os-project-detail-columns section > header h3 { margin:0; font-size:16px; flex:1; }
#swap-os-app .swap-os-project-detail-columns section > header > span { color:var(--swap-muted,#8da0bf); font-size:12px; }
#swap-os-app .swap-os-project-detail-columns ul { list-style:none; margin:0; padding:0; }
#swap-os-app .swap-os-project-detail-row { display:flex; align-items:center; gap:10px; padding:12px 0; border-top:1px solid var(--swap-border,#1c2a40); min-width:0; }
#swap-os-app .swap-os-project-detail-check { color:#8db0ff; font-size:17px; flex:0 0 20px; }
#swap-os-app .swap-os-project-detail-check.is-done { color:#72dda0; }
#swap-os-app .swap-os-project-detail-main { flex:1; min-width:0; display:flex; flex-direction:column; gap:4px; }
#swap-os-app .swap-os-project-detail-main strong { overflow-wrap:anywhere; font-size:13px; }
#swap-os-app .swap-os-project-detail-main small,.swap-os-project-detail-state { color:var(--swap-muted,#8da0bf); font-size:11px; }
#swap-os-app .swap-os-project-detail-state { flex:0 0 auto; }
#swap-os-app .swap-os-project-detail-empty { padding:18px 4px; color:var(--swap-muted,#8da0bf); font-size:13px; }
@media(max-width:650px) { #swap-os-app .swap-os-project-details-modal { padding:20px; } #swap-os-app .swap-os-project-detail-columns { grid-template-columns:1fr; } #swap-os-app .swap-os-project-detail-state { display:none; } }


/* SWAP OS v10.46.0 — Project milestones shown alongside (not duplicated into) timed calendar events. */
.swap-os-project-deadlines{margin:0 0 18px;padding:18px;border:1px solid rgba(139,124,255,.22);border-radius:20px;background:linear-gradient(135deg,rgba(90,75,160,.12),rgba(16,24,44,.62));backdrop-filter:blur(16px)}
.swap-os-project-deadlines-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.swap-os-project-deadlines-head h3{margin:4px 0 5px;font-size:1.08rem;color:var(--swap-os-text,#f4f5ff)}
.swap-os-project-deadlines-head p{margin:0;color:var(--swap-os-muted,#9ca7c4);font-size:.84rem;line-height:1.45}
.swap-os-project-deadline-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid rgba(148,163,184,.13)}
.swap-os-project-deadline-date{width:42px;min-width:42px;height:46px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:12px;background:rgba(124,112,255,.15);color:#d8d2ff}
.swap-os-project-deadline-date b{font-size:1rem;line-height:1.1}.swap-os-project-deadline-date small{font-size:.68rem;opacity:.8}
.swap-os-project-deadline-date.is-overdue{background:rgba(248,113,113,.14);color:#fca5a5}
.swap-os-project-deadline-main{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}.swap-os-project-deadline-main b{overflow-wrap:anywhere;color:var(--swap-os-text,#f4f5ff);font-size:.9rem}.swap-os-project-deadline-main small{color:var(--swap-os-muted,#9ca7c4);font-size:.78rem}
.swap-os-project-deadline-status{font-size:.72rem;color:#a5b4fc;white-space:nowrap}.swap-os-project-deadline-status.is-overdue{color:#fca5a5}
@media(max-width:600px){.swap-os-project-deadlines{padding:14px;border-radius:16px}.swap-os-project-deadlines-head{gap:8px}.swap-os-project-deadline-status{max-width:76px;white-space:normal;text-align:right}.swap-os-project-deadline-row{gap:9px}}

/* SWAP OS v10.49.0 — Campaigns workspace */
#swap-os-app .swap-os-project-campaigns-panel{margin-top:22px;padding:clamp(16px,2.5vw,24px);border:1px solid var(--swap-border,#1c2a40);border-radius:18px;background:linear-gradient(145deg,rgba(112,91,255,.055),rgba(255,255,255,.015));}
#swap-os-app .swap-os-campaign-toolbar{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(150px,.8fr) minmax(190px,1.4fr);gap:12px;margin:18px 0;}
#swap-os-app .swap-os-campaign-toolbar label,#swap-os-app .swap-os-campaign-modal form>label,#swap-os-app .swap-os-campaign-form-grid label{display:flex;flex-direction:column;gap:7px;color:var(--swap-muted,#8da0bf);font-size:12px;font-weight:600;}
#swap-os-app .swap-os-campaign-toolbar select,#swap-os-app .swap-os-campaign-toolbar input,#swap-os-app .swap-os-campaign-modal input,#swap-os-app .swap-os-campaign-modal select,#swap-os-app .swap-os-campaign-modal textarea{width:100%;min-width:0;border:1px solid var(--swap-border,#26344b);border-radius:10px;background:rgba(9,15,29,.72);color:var(--swap-text,#eef3ff);padding:11px 12px;box-sizing:border-box;}
#swap-os-app .swap-os-project-campaign-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;}
#swap-os-app .swap-os-campaign-card{min-width:0;padding:17px;border:1px solid var(--swap-border,#26344b);border-radius:14px;background:rgba(7,13,26,.48);}
#swap-os-app .swap-os-campaign-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;}
#swap-os-app .swap-os-campaign-channel{display:inline-flex;padding:5px 9px;border:1px solid rgba(139,124,255,.3);border-radius:999px;background:rgba(139,124,255,.1);color:#c7beff;font-size:11px;font-weight:700;}
#swap-os-app .swap-os-campaign-card h3{margin:15px 0 5px;font-size:16px;overflow-wrap:anywhere;}
#swap-os-app .swap-os-campaign-project{margin:0 0 11px;color:var(--swap-muted,#8da0bf);font-size:12px;}
#swap-os-app .swap-os-campaign-dates{padding:9px 10px;border-radius:9px;background:rgba(255,255,255,.035);font-size:12px;color:var(--swap-text,#eef3ff);}
#swap-os-app .swap-os-campaign-deliverables{margin-top:13px;font-size:12px;color:var(--swap-muted,#8da0bf);}
#swap-os-app .swap-os-campaign-deliverables strong{color:var(--swap-text,#eef3ff);}
#swap-os-app .swap-os-campaign-deliverables ul{margin:8px 0 0;padding-left:18px;}
#swap-os-app .swap-os-campaign-deliverables li{margin:5px 0;overflow-wrap:anywhere;}
#swap-os-app .swap-os-campaign-deliverables .more{list-style:none;color:#a99cff;}
#swap-os-app .swap-os-campaign-card-actions{display:flex;align-items:center;gap:8px;margin-top:15px;padding-top:12px;border-top:1px solid var(--swap-border,#26344b);}
#swap-os-app .swap-os-campaign-card-actions .swap-os-project-delete{margin-left:auto;}
#swap-os-app .swap-os-campaign-empty{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:145px;padding:22px;text-align:center;border:1px dashed var(--swap-border,#26344b);border-radius:13px;color:var(--swap-muted,#8da0bf);}
#swap-os-app .swap-os-campaign-empty>span{font-size:27px;color:#a99cff;}
#swap-os-app .swap-os-campaign-empty strong{color:var(--swap-text,#eef3ff);}
#swap-os-app .swap-os-campaign-empty p{margin:0 0 6px;font-size:13px;}
#swap-os-app .swap-os-campaign-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0;}
#swap-os-app .swap-os-campaign-modal form>label{margin-top:13px;}
#swap-os-app .swap-os-campaign-modal form>label small{font-weight:400;}
#swap-os-app .swap-os-campaign-modal textarea{resize:vertical;}
@media(max-width:700px){#swap-os-app .swap-os-campaign-toolbar{grid-template-columns:1fr 1fr;}#swap-os-app .swap-os-campaign-search-label{grid-column:1/-1;}#swap-os-app .swap-os-project-campaign-list{grid-template-columns:1fr;}#swap-os-app .swap-os-campaign-form-grid{grid-template-columns:1fr;}#swap-os-app .swap-os-project-campaigns-panel{padding:14px;}}

/* v10.50.0 campaign schedule and trackable deliverables */
#swap-os-app .swap-os-campaign-schedule-panel{margin-top:20px;padding-top:18px;border-top:1px solid var(--swap-border,#26344b)}
#swap-os-app .swap-os-campaign-schedule-heading h3{margin:5px 0 12px;color:var(--swap-text,#eef3ff);font-size:17px}
#swap-os-app .swap-os-project-campaign-schedule{display:grid;gap:8px}
#swap-os-app .swap-os-campaign-schedule-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--swap-border,#26344b);border-radius:12px;background:rgba(255,255,255,.025)}
#swap-os-app .swap-os-campaign-schedule-date{display:flex;flex-direction:column;gap:4px;min-width:115px}
#swap-os-app .swap-os-campaign-schedule-date strong{font-size:12px;color:var(--swap-text,#eef3ff)}
#swap-os-app .swap-os-campaign-schedule-date span,#swap-os-app .swap-os-campaign-schedule-copy small{font-size:11px;color:var(--swap-muted,#8da0bf)}
#swap-os-app .swap-os-campaign-schedule-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}
#swap-os-app .swap-os-campaign-schedule-copy strong{overflow-wrap:anywhere;color:var(--swap-text,#eef3ff)}
#swap-os-app .swap-os-campaign-schedule-empty{padding:12px;border:1px dashed var(--swap-border,#26344b);border-radius:10px;color:var(--swap-muted,#8da0bf);font-size:13px}
#swap-os-app .swap-os-deliverable-check{display:flex;align-items:flex-start;gap:8px;cursor:pointer;font-size:12px}
#swap-os-app .swap-os-deliverable-check input{margin-top:3px;accent-color:#8b7cff}
#swap-os-app .swap-os-deliverable-check .is-complete{text-decoration:line-through;color:var(--swap-muted,#8da0bf)}
@media(max-width:520px){#swap-os-app .swap-os-campaign-schedule-item{align-items:flex-start;flex-wrap:wrap}#swap-os-app .swap-os-campaign-schedule-date{min-width:100%;flex-direction:row;align-items:center;justify-content:space-between}#swap-os-app .swap-os-campaign-schedule-item>.swap-os-outline-btn{margin-left:auto}}

/* v10.51.0 — trackable campaign deliverables and progress */
#swap-os-app .swap-os-campaign-progress-label{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;}
#swap-os-app .swap-os-campaign-progress-label span{font-variant-numeric:tabular-nums;color:var(--swap-muted,#8da0bf);}
#swap-os-app .swap-os-campaign-progress-track{height:6px;border-radius:999px;overflow:hidden;background:rgba(145,160,190,.16);}
#swap-os-app .swap-os-campaign-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8b7cff,#49d8e8);transition:width .2s ease;}
#swap-os-app .swap-os-campaign-deliverables ul{list-style:none;padding:0;margin:9px 0 0;display:grid;gap:6px;}
#swap-os-app .swap-os-deliverable-check{display:flex;align-items:flex-start;gap:8px;cursor:pointer;line-height:1.4;color:var(--swap-muted,#8da0bf);}
#swap-os-app .swap-os-deliverable-check input{flex:0 0 auto;margin:2px 0 0;accent-color:#9b8cff;}
#swap-os-app .swap-os-deliverable-check span{overflow-wrap:anywhere;}
#swap-os-app .swap-os-deliverable-check.is-complete span{text-decoration:line-through;opacity:.7;}
#swap-os-app .swap-os-deliverable-check input:focus-visible{outline:2px solid #9b8cff;outline-offset:3px;}

/* v10.53.0 deliverable due-date metadata */
.swap-os-deliverable-due{display:inline-block;margin-left:.4rem;color:var(--swap-muted,#9aa4ba);font-size:.78em;white-space:nowrap}

/* v10.55.0 — personal campaign performance summary */
.swap-os-campaign-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 18px}
.swap-os-campaign-metrics article{min-width:0;padding:14px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:linear-gradient(145deg,rgba(30,41,59,.62),rgba(15,23,42,.42));display:flex;flex-direction:column;gap:8px}
.swap-os-campaign-metrics article>span{font-size:12px;color:var(--swap-os-muted,#94a3b8)}
.swap-os-campaign-metrics article>strong{font-size:24px;line-height:1.15;color:var(--swap-os-text,#f8fafc);font-weight:650;overflow-wrap:anywhere}
.swap-os-campaign-metrics article.is-alert>strong{color:#fb7185}
.swap-os-campaign-metrics article.is-progress{grid-column:span 1}
.swap-os-deliverable-due{display:block;margin:3px 0 7px 28px;font-size:11px;color:#93c5fd}
.swap-os-deliverable-due.is-overdue{color:#fb7185}
@media(max-width:900px){.swap-os-campaign-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.swap-os-campaign-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.swap-os-campaign-metrics article{padding:12px;border-radius:13px}.swap-os-campaign-metrics article>strong{font-size:21px}.swap-os-campaign-metrics article.is-progress{grid-column:span 2}}

/* Projects v10.57.0 — personal project budget editor */
#swap-os-app .swap-os-project-budget-panel{margin:20px 0;padding:18px;border:1px solid var(--swap-border,#26364e);border-radius:16px;background:linear-gradient(135deg,rgba(108,92,231,.10),rgba(44,182,218,.04));}
#swap-os-app .swap-os-project-budget-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;}
#swap-os-app .swap-os-project-budget-heading h3{margin:4px 0 0;font-size:18px;}
#swap-os-app .swap-os-project-budget-amount{font-weight:700;font-size:20px;color:var(--swap-text,#f4f7ff);}
#swap-os-app .swap-os-project-budget-panel form{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:12px;align-items:end;}
#swap-os-app .swap-os-project-budget-panel label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--swap-muted,#9aaac2);}
#swap-os-app .swap-os-project-budget-panel input,#swap-os-app .swap-os-project-budget-panel textarea{width:100%;box-sizing:border-box;border:1px solid var(--swap-border,#26364e);border-radius:10px;background:rgba(5,12,25,.62);color:var(--swap-text,#f4f7ff);padding:11px 12px;font:inherit;}
#swap-os-app .swap-os-project-budget-panel .swap-os-project-budget-notes{grid-column:1/-1;}
#swap-os-app .swap-os-project-budget-panel form button{justify-self:start;}
#swap-os-app .swap-os-project-budget-note{margin:12px 0 0;font-size:11px;line-height:1.5;color:var(--swap-muted,#9aaac2);}
@media(max-width:560px){#swap-os-app .swap-os-project-budget-panel{padding:14px;}#swap-os-app .swap-os-project-budget-heading{align-items:flex-start;flex-direction:column;}#swap-os-app .swap-os-project-budget-panel form{grid-template-columns:minmax(0,1fr);}#swap-os-app .swap-os-project-budget-panel .swap-os-project-budget-notes{grid-column:auto;}#swap-os-app .swap-os-project-budget-panel form button{width:100%;}}

/* v10.58.0: explicit Finance expense allocations within personal Project Details */
.swap-os-project-finance-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin:12px 0;border:1px solid rgba(125,145,190,.2);border-radius:14px;background:rgba(105,120,170,.08)}
.swap-os-project-finance-summary span{font-size:12px;color:var(--swap-muted,#929bb1)}
.swap-os-project-finance-summary strong{font-size:18px;letter-spacing:-.03em}
.swap-os-project-finance-list{display:grid;gap:8px;max-height:260px;overflow:auto}
.swap-os-project-finance-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(125,145,190,.16);border-radius:12px;background:rgba(10,15,30,.25)}
.swap-os-project-finance-row>span{display:grid;gap:3px;min-width:0}
.swap-os-project-finance-row strong{font-size:13px;overflow-wrap:anywhere}
.swap-os-project-finance-row small{font-size:11px;color:var(--swap-muted,#929bb1)}
.swap-os-project-finance-row>b{font-size:12px;white-space:nowrap}
@media(max-width:600px){.swap-os-project-finance-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.swap-os-project-finance-row .swap-os-outline-btn{grid-column:1/-1;width:100%}}

/* v10.59.0 — clear project budget performance at a glance */
#swap-os-app .swap-os-project-budget-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
#swap-os-app .swap-os-project-budget-metrics>div:not(.swap-os-project-budget-progress){display:flex;flex-direction:column;gap:7px;padding:13px;border:1px solid rgba(125,145,190,.2);border-radius:13px;background:rgba(105,120,170,.07);min-width:0}
#swap-os-app .swap-os-project-budget-metrics span{font-size:11px;color:var(--swap-muted,#929bb1)}
#swap-os-app .swap-os-project-budget-metrics strong{font-size:clamp(15px,2vw,20px);letter-spacing:-.025em;overflow-wrap:anywhere}
#swap-os-app .swap-os-project-budget-metrics strong.is-over-budget{color:#ff7d91}
#swap-os-app .swap-os-project-budget-progress{grid-column:1/-1;height:7px;overflow:hidden;border-radius:99px;background:rgba(125,145,190,.16);padding:0!important}
#swap-os-app .swap-os-project-budget-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8b7cff,#39c6e6);transition:width .25s ease}
#swap-os-app .swap-os-project-budget-metrics small{grid-column:1/-1;color:var(--swap-muted,#929bb1);font-size:11px}
@media(min-width:700px){#swap-os-app .swap-os-project-budget-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}


/* v10.61.0 — actionable risk and upcoming-deadline panels */
#swap-os-app .swap-os-project-health-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
#swap-os-app .swap-os-health-subpanel{min-width:0;padding:13px;border:1px solid rgba(125,145,190,.18);border-radius:14px;background:rgba(8,15,30,.3)}
#swap-os-app .swap-os-health-subhead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
#swap-os-app .swap-os-health-subhead>div{display:grid;gap:3px}
#swap-os-app .swap-os-health-subhead small{font-size:9px;letter-spacing:.1em;color:var(--swap-muted,#929bb1)}
#swap-os-app .swap-os-health-subhead strong{font-size:13px;color:var(--swap-text,#f4f7ff)}
#swap-os-app .swap-os-health-subhead>span{display:grid;place-items:center;min-width:26px;height:26px;padding:0 7px;border-radius:9px;background:rgba(139,124,255,.12);color:#c4b5fd;font-size:11px;font-weight:700}
#swap-os-app .swap-os-health-risk-list,#swap-os-app .swap-os-health-deadline-list{display:grid;gap:7px}
#swap-os-app .swap-os-health-risk,#swap-os-app .swap-os-health-deadline{display:flex;align-items:center;gap:9px;width:100%;min-width:0;text-align:left;padding:9px 10px;border:1px solid rgba(125,145,190,.14);border-radius:10px;background:rgba(125,145,190,.045);color:inherit;cursor:pointer}
#swap-os-app .swap-os-health-risk:hover,#swap-os-app .swap-os-health-deadline:hover{border-color:rgba(139,124,255,.5);background:rgba(139,124,255,.08)}
#swap-os-app .swap-os-health-risk-dot{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#fb7185;box-shadow:0 0 10px rgba(251,113,133,.35)}
#swap-os-app .swap-os-health-risk-main,#swap-os-app .swap-os-health-deadline-main{display:grid;gap:3px;flex:1;min-width:0}
#swap-os-app .swap-os-health-risk-main strong,#swap-os-app .swap-os-health-deadline-main strong{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#swap-os-app .swap-os-health-risk-main small,#swap-os-app .swap-os-health-deadline-main small{font-size:10px;line-height:1.35;color:var(--swap-muted,#929bb1);overflow-wrap:anywhere}
#swap-os-app .swap-os-health-risk-count{font-size:10px;font-weight:700;color:#fb91a1}
#swap-os-app .swap-os-health-date{flex:0 0 auto;min-width:70px;font-size:10px;color:#c4b5fd;font-variant-numeric:tabular-nums}
#swap-os-app .swap-os-health-empty{margin:0;padding:12px 4px;font-size:11px;line-height:1.5;color:var(--swap-muted,#929bb1)}
@media(max-width:650px){#swap-os-app .swap-os-project-health-sections{grid-template-columns:minmax(0,1fr)}#swap-os-app .swap-os-health-subpanel{padding:11px}#swap-os-app .swap-os-health-date{min-width:64px;font-size:9px}}

/* SWAP OS v10.62.0 — personal project portfolio timeline */
.swap-os-portfolio-timeline{margin:22px 0;padding:clamp(16px,2.5vw,24px);border:1px solid rgba(151,163,196,.18);border-radius:22px;background:linear-gradient(145deg,rgba(20,25,43,.92),rgba(12,16,30,.88));box-shadow:0 18px 50px rgba(0,0,0,.14)}
.swap-os-portfolio-timeline .swap-os-project-milestones-head{margin-bottom:16px}
.swap-os-portfolio-timeline-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px}
.swap-os-portfolio-timeline-filters label{display:grid;gap:6px;color:var(--swap-os-muted,#9ca7c2);font-size:12px;font-weight:600}
.swap-os-portfolio-timeline-filters select{width:100%;min-width:0;padding:10px 12px;border:1px solid rgba(151,163,196,.22);border-radius:12px;background:rgba(255,255,255,.045);color:inherit}
.swap-os-portfolio-timeline-items{display:grid;gap:8px}
.swap-os-portfolio-timeline-item{display:grid;grid-template-columns:minmax(112px,150px) minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px 14px;border:1px solid rgba(151,163,196,.14);border-radius:14px;background:rgba(255,255,255,.025)}
.swap-os-portfolio-timeline-date{display:grid;gap:4px}.swap-os-portfolio-timeline-date strong{font-size:13px;font-variant-numeric:tabular-nums}.swap-os-portfolio-timeline-date span{color:#9da9c6;font-size:11px;text-transform:uppercase;letter-spacing:.07em}
.swap-os-portfolio-timeline-copy{display:grid;gap:4px;min-width:0}.swap-os-portfolio-timeline-copy strong{overflow-wrap:anywhere;font-size:14px}.swap-os-portfolio-timeline-copy small{color:#9da9c6;font-size:12px;overflow-wrap:anywhere}
.swap-os-portfolio-timeline-status{padding:5px 8px;border-radius:999px;background:rgba(139,124,255,.12);color:#c7bdff;font-size:11px;text-transform:capitalize;white-space:nowrap}
.swap-os-portfolio-timeline-item.is-overdue{border-color:rgba(251,113,133,.32);background:rgba(251,113,133,.045)}.swap-os-portfolio-timeline-item.is-overdue .swap-os-portfolio-timeline-date span{color:#fb8da0}.swap-os-portfolio-timeline-item.is-overdue .swap-os-portfolio-timeline-status{background:rgba(251,113,133,.12);color:#ff9aab}
@media(max-width:680px){.swap-os-portfolio-timeline-filters{grid-template-columns:1fr}.swap-os-portfolio-timeline-item{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px}.swap-os-portfolio-timeline-date{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}.swap-os-portfolio-timeline-copy{grid-column:1}.swap-os-portfolio-timeline-status{grid-column:2;grid-row:2;align-self:start;max-width:120px;overflow:hidden;text-overflow:ellipsis}}

/* v10.63.0 project dates and actionable portfolio timeline */
#swap-os-app .swap-os-project-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:10px 0;}#swap-os-app .swap-os-project-date-grid label{display:flex;flex-direction:column;gap:6px;}#swap-os-app .swap-os-project-date-hint{font-size:12px;color:var(--swap-muted,#94a3b8);margin:-2px 0 12px;}#swap-os-app .swap-os-project-date-summary{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0;color:var(--swap-muted,#94a3b8);font-size:12px;}#swap-os-app .swap-os-project-date-summary span{padding:5px 8px;border:1px solid rgba(148,163,184,.16);border-radius:8px;background:rgba(148,163,184,.06);}#swap-os-app .swap-os-timeline-open{align-self:center;padding:6px 10px;white-space:nowrap;}#swap-os-app .swap-os-portfolio-timeline-item{grid-template-columns:minmax(100px,.7fr) minmax(0,2fr) auto auto;}@media(max-width:650px){#swap-os-app .swap-os-project-date-grid{grid-template-columns:1fr;}#swap-os-app .swap-os-portfolio-timeline-item{grid-template-columns:1fr auto;gap:8px;}#swap-os-app .swap-os-portfolio-timeline-copy{grid-column:1/-1;grid-row:2;}#swap-os-app .swap-os-portfolio-timeline-status{grid-column:1;grid-row:3;justify-self:start;}#swap-os-app .swap-os-timeline-open{grid-column:2;grid-row:3;}}


/* v10.73.0 — mobile Command Center interaction polish. */
@media(max-width:760px){
  #swap-os-app .swap-os-mini-day{min-height:38px;aspect-ratio:auto;border-radius:10px;font-size:12px;}
  #swap-os-app .swap-os-mini-weekday{padding:8px 0;font-size:10px;}
  #swap-os-app .swap-os-daily-task{min-height:48px;gap:9px;}
  #swap-os-app .swap-os-daily-task-copy strong{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4;}
  #swap-os-app .swap-os-dash-event{min-height:54px;}
  #swap-os-app .swap-os-quick-actions button{min-height:76px;padding:13px 11px;}
  #swap-os-app .swap-os-command-card button:focus-visible{outline-offset:2px;}
}
@media(max-width:380px){
  #swap-os-app .swap-os-mini-calendar{gap:2px;}
  #swap-os-app .swap-os-mini-day{min-height:34px;font-size:11px;}
  #swap-os-app .swap-os-daily-metrics>div{padding:9px 7px;}
  #swap-os-app .swap-os-daily-metrics span{white-space:normal;line-height:1.3;}
}
@media(prefers-reduced-motion:reduce){#swap-os-app .swap-os-mini-day,#swap-os-app .swap-os-daily-task,#swap-os-app .swap-os-quick-actions button{scroll-behavior:auto;transition:none!important;}}

/* v10.74.0 — Dashboard data-state clarity */
.swap-os-data-state { display:flex; flex-direction:column; align-items:flex-start; gap:8px; padding:16px; }
.swap-os-data-state strong { color:var(--swap-text, inherit); }
.swap-os-data-state span { color:var(--swap-muted, inherit); font-size:.9em; line-height:1.45; }
.swap-os-data-state button { min-height:40px; padding:8px 12px; border:1px solid var(--swap-border, rgba(255,255,255,.16)); border-radius:12px; background:var(--swap-glass, rgba(255,255,255,.05)); color:inherit; cursor:pointer; }
.swap-os-data-state button:focus-visible { outline:2px solid var(--swap-accent, #7dd3fc); outline-offset:3px; }


/* v10.75.0 — Project details modal layout correction from supplied screenshot */
#swap-os-app .swap-os-project-details-backdrop {
  position: fixed; inset: 0; z-index: 10020; display: flex; align-items: center; justify-content: center;
  padding: clamp(10px, 2.5vw, 28px); overflow-y: auto;
}
#swap-os-app .swap-os-project-details-modal {
  width: min(960px, calc(100vw - 40px)); max-width: 960px; max-height: calc(100vh - 40px); max-height: calc(100dvh - 40px);
  margin: auto; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain;
  scrollbar-gutter: stable; padding: clamp(18px, 2.4vw, 30px);
}
#swap-os-app .swap-os-project-details-modal > :first-child { min-width: 0; }
#swap-os-app .swap-os-project-details-modal .swap-os-project-detail-progress { margin-bottom: 16px; }
#swap-os-app .swap-os-project-details-modal .swap-os-project-detail-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
#swap-os-app .swap-os-project-details-modal input,
#swap-os-app .swap-os-project-details-modal select,
#swap-os-app .swap-os-project-details-modal textarea { max-width: 100%; min-width: 0; }
@media (max-width: 700px) {
  #swap-os-app .swap-os-project-details-backdrop { align-items: flex-start; padding: 8px; }
  #swap-os-app .swap-os-project-details-modal { width: 100%; max-width: none; max-height: calc(100vh - 16px); max-height: calc(100dvh - 16px); padding: 16px; border-radius: 14px; }
  #swap-os-app .swap-os-project-details-modal .swap-os-project-detail-columns { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  #swap-os-app .swap-os-project-details-modal .swap-os-project-detail-state { display: none; }
}
@media (max-width: 380px) {
  #swap-os-app .swap-os-project-details-modal { padding: 12px; }
  #swap-os-app .swap-os-project-details-modal .swap-os-project-detail-columns section { padding: 11px; }
}

/* v10.76.0 — enforce project modal width and keep its close action reachable */
#swap-os-app .swap-os-project-details-modal {
  box-sizing: border-box !important;
  width: min(960px, calc(100vw - 32px)) !important;
  max-width: 960px !important;
  min-width: 0 !important;
  position: relative;
}
#swap-os-app .swap-os-project-details-modal .swap-os-modal-close {
  position: sticky;
  top: 0;
  z-index: 4;
  float: right;
  margin: -4px -4px 4px 12px;
  min-width: 36px;
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
}
#swap-os-app .swap-os-project-details-modal:focus-visible {
  outline: 2px solid var(--swap-accent, #a855f7);
  outline-offset: 3px;
}
@media (max-width: 700px) {
  #swap-os-app .swap-os-project-details-modal {
    width: calc(100vw - 16px) !important;
    max-width: none !important;
  }
}


/* v10.77.0 — contain project detail layout and prevent inherited grid/flex sizing from narrowing the dialog */
#swap-os-app .swap-os-project-details-backdrop { box-sizing: border-box; width: 100%; min-width: 0; }
#swap-os-app .swap-os-project-details-modal {
  display: block; flex: 0 1 960px; min-width: 0;
  width: min(960px, calc(100% - 32px)) !important;
  max-width: calc(100% - 32px) !important;
  max-height: min(900px, calc(100dvh - 32px));
  overflow: auto; overflow-x: clip;
  contain: layout;
}
#swap-os-app .swap-os-project-details-modal #swapOsProjectDetailsContent {
  display: block; width: 100%; min-width: 0; max-width: 100%;
}
#swap-os-app .swap-os-project-details-modal #swapOsProjectDetailsContent > *,
#swap-os-app .swap-os-project-details-modal .swap-os-project-detail-columns,
#swap-os-app .swap-os-project-details-modal .swap-os-project-detail-columns > * {
  box-sizing: border-box; min-width: 0; max-width: 100%;
}
#swap-os-app .swap-os-project-details-modal input,
#swap-os-app .swap-os-project-details-modal select,
#swap-os-app .swap-os-project-details-modal textarea,
#swap-os-app .swap-os-project-details-modal button { max-width: 100%; }
@media (max-width: 700px) {
  #swap-os-app .swap-os-project-details-modal {
    flex: 0 1 auto; width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important; max-height: calc(100dvh - 16px);
    margin: 0 auto;
  }
}


/* v10.78.0 — give project details dialog a predictable viewport-based width. */
#swap-os-app .swap-os-project-details-backdrop {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 16px !important;
}
#swap-os-app .swap-os-project-details-modal {
  box-sizing: border-box !important;
  flex: 0 0 min(1100px, calc(100vw - 32px)) !important;
  width: min(1100px, calc(100vw - 32px)) !important;
  min-width: 0 !important;
  max-width: min(1100px, calc(100vw - 32px)) !important;
  max-height: calc(100vh - 32px) !important;
  max-height: calc(100dvh - 32px) !important;
  margin: auto !important;
}
#swap-os-app .swap-os-project-details-modal #swapOsProjectDetailsContent {
  width: 100% !important;
  min-width: 0 !important;
}
@media (max-width: 700px) {
  #swap-os-app .swap-os-project-details-backdrop { padding: 8px !important; align-items: flex-start !important; }
  #swap-os-app .swap-os-project-details-modal {
    flex-basis: calc(100vw - 16px) !important;
    width: calc(100vw - 16px) !important;
    max-width: calc(100vw - 16px) !important;
    max-height: calc(100vh - 16px) !important;
    max-height: calc(100dvh - 16px) !important;
    margin: 0 auto !important;
  }
}

/* v10.83.0 — Project-only invoice ledger; intentionally isolated from My Finance. */
#swap-os-app .swap-os-project-invoice-ledger{margin:20px 0;padding:18px;border:1px solid var(--swap-border,#26364e);border-radius:16px;background:linear-gradient(135deg,rgba(34,197,190,.08),rgba(108,92,231,.06));}
#swap-os-app .swap-os-project-invoice-ledger form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:end;margin:14px 0 18px;}
#swap-os-app .swap-os-project-invoice-ledger label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--swap-muted,#9aaac2);min-width:0;}
#swap-os-app .swap-os-project-invoice-ledger input,#swap-os-app .swap-os-project-invoice-ledger textarea{width:100%;min-width:0;box-sizing:border-box;border:1px solid var(--swap-border,#26364e);border-radius:10px;background:rgba(5,12,25,.62);color:var(--swap-text,#f4f7ff);padding:11px 12px;font:inherit;}
#swap-os-app .swap-os-project-invoice-ledger .swap-os-project-budget-notes{grid-column:1/-1;}
#swap-os-app .swap-os-project-invoice-ledger form button{justify-self:start;}
#swap-os-app .swap-os-project-invoice-card{padding:14px;margin:10px 0;border:1px solid var(--swap-border,#26364e);border-radius:12px;background:rgba(5,12,25,.32);min-width:0;}
#swap-os-app .swap-os-project-invoice-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
#swap-os-app .swap-os-project-invoice-card-head>div{min-width:0;display:grid;gap:4px;}
#swap-os-app .swap-os-project-invoice-card-head small,#swap-os-app .swap-os-project-invoice-due{color:var(--swap-muted,#9aaac2);overflow-wrap:anywhere;}
#swap-os-app .swap-os-project-invoice-status{font-size:11px;text-transform:capitalize;padding:5px 8px;border-radius:999px;border:1px solid var(--swap-border,#26364e);white-space:nowrap;}
#swap-os-app .swap-os-project-invoice-status.is-paid{color:#72e0b0;}#swap-os-app .swap-os-project-invoice-status.is-partially_paid{color:#f5c66d;}#swap-os-app .swap-os-project-invoice-status.is-unpaid{color:#f2a3a3;}
#swap-os-app .swap-os-project-invoice-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0;}
#swap-os-app .swap-os-project-invoice-values>div{display:grid;gap:5px;min-width:0;}#swap-os-app .swap-os-project-invoice-values small{font-size:11px;color:var(--swap-muted,#9aaac2);}#swap-os-app .swap-os-project-invoice-values strong{overflow-wrap:anywhere;}
#swap-os-app .swap-os-project-invoice-payments{margin:12px 0;padding-top:10px;border-top:1px solid var(--swap-border,#26364e);}
#swap-os-app .swap-os-project-invoice-payments>div{display:flex;justify-content:space-between;gap:12px;margin-top:8px;font-size:12px;}#swap-os-app .swap-os-project-invoice-payments span{color:var(--swap-muted,#9aaac2);overflow-wrap:anywhere;}
@media(max-width:560px){#swap-os-app .swap-os-project-invoice-ledger{padding:14px;}#swap-os-app .swap-os-project-invoice-ledger form{grid-template-columns:minmax(0,1fr);}#swap-os-app .swap-os-project-invoice-ledger .swap-os-project-budget-notes{grid-column:auto;}#swap-os-app .swap-os-project-invoice-ledger form button{width:100%;}#swap-os-app .swap-os-project-invoice-values{gap:6px;}#swap-os-app .swap-os-project-invoice-values strong{font-size:12px;}}


/* v10.87.0: clearer project receipt history and audit context */
.swap-os-project-payment-row { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:9px 0; border-top:1px solid var(--swap-os-border, rgba(148,163,184,.18)); }
.swap-os-project-payment-row > span { min-width:0; overflow-wrap:anywhere; }
.swap-os-project-payment-row > strong { white-space:nowrap; }
.swap-os-project-payment-note, .swap-os-project-payment-recorded, .swap-os-project-payment-audit-note { display:block; margin-top:4px; font-size:12px; opacity:.75; line-height:1.45; }
.swap-os-project-payment-audit-note { margin:6px 0 4px; }
/* v10.88.0: project receipt correction audit rows */
.swap-os-project-payment-row.is-correction{border-left:3px solid var(--swap-os-accent,#8b5cf6);padding-left:10px;background:rgba(139,92,246,.06)}
.swap-os-project-payment-row.is-correction>strong{color:var(--swap-os-danger,#dc6262)}
.swap-os-project-payment-row [data-project-payment-correct]{margin-top:6px;white-space:nowrap}

/* v10.89.0: readable original-versus-corrected receipt totals */
.swap-os-project-correction-summary{display:grid;gap:7px;margin:10px 0 12px;padding:12px;border:1px solid var(--swap-os-border,rgba(148,163,184,.18));border-radius:12px;background:rgba(139,92,246,.045)}
.swap-os-project-correction-summary>strong{font-size:13px;margin-bottom:2px}
.swap-os-project-correction-summary>div{display:flex;justify-content:space-between;gap:12px;font-size:12px}
.swap-os-project-correction-summary>div span{opacity:.78}
.swap-os-project-correction-summary>div strong{white-space:nowrap}
.swap-os-project-correction-summary>small{display:block;margin-top:3px;font-size:11px;line-height:1.45;opacity:.75}

/* v10.91.0: project-only invoice reconciliation summary */
.swap-os-project-reconciliation{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:14px 0 18px;}
.swap-os-project-reconciliation-group{min-width:0;padding:14px;border:1px solid var(--swap-os-border,rgba(148,163,184,.22));border-radius:14px;background:var(--swap-os-glass,rgba(15,23,42,.28));}
.swap-os-project-reconciliation-group>strong{display:block;margin-bottom:10px;font-size:.82rem;letter-spacing:.04em;}
.swap-os-project-reconciliation-group>div{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:5px 0;font-size:.82rem;}
.swap-os-project-reconciliation-group>div span{color:var(--swap-os-muted,#94a3b8);}
.swap-os-project-reconciliation-group>div strong{text-align:right;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;}
@media(max-width:600px){.swap-os-project-reconciliation{grid-template-columns:minmax(0,1fr);gap:9px}.swap-os-project-reconciliation-group{padding:12px}}


/* v10.93.0 — consolidate final project details dialog sizing after legacy modal rules. */
#swap-os-app #swapOsProjectDetailsModal.swap-os-project-details-backdrop {
  box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0;
  padding: clamp(8px, 2vw, 24px); align-items: center; justify-content: center;
  overflow-x: hidden; overflow-y: auto;
}
#swap-os-app #swapOsProjectDetailsModal .swap-os-project-details-modal {
  box-sizing: border-box; display: block; flex: 0 1 1100px;
  width: min(1100px, calc(100vw - 48px)); max-width: min(1100px, calc(100vw - 48px));
  min-width: 0; max-height: calc(100vh - 48px); max-height: calc(100dvh - 48px);
  margin: auto; padding: clamp(16px, 2vw, 28px);
  overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain;
}
#swap-os-app #swapOsProjectDetailsModal #swapOsProjectDetailsContent {
  display: block; width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box;
}
#swap-os-app #swapOsProjectDetailsModal #swapOsProjectDetailsContent > *,
#swap-os-app #swapOsProjectDetailsModal .swap-os-project-detail-columns,
#swap-os-app #swapOsProjectDetailsModal .swap-os-project-detail-columns > *,
#swap-os-app #swapOsProjectDetailsModal .swap-os-project-budget-panel,
#swap-os-app #swapOsProjectDetailsModal .swap-os-project-invoice-ledger {
  box-sizing: border-box; min-width: 0; max-width: 100%;
}
#swap-os-app #swapOsProjectDetailsModal .swap-os-project-detail-columns {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px;
}
#swap-os-app #swapOsProjectDetailsModal input,
#swap-os-app #swapOsProjectDetailsModal select,
#swap-os-app #swapOsProjectDetailsModal textarea,
#swap-os-app #swapOsProjectDetailsModal button { max-width: 100%; box-sizing: border-box; }
@media (max-width: 700px) {
  #swap-os-app #swapOsProjectDetailsModal.swap-os-project-details-backdrop { padding: 8px; align-items: flex-start; }
  #swap-os-app #swapOsProjectDetailsModal .swap-os-project-details-modal {
    flex: 0 1 auto; width: calc(100vw - 16px); max-width: calc(100vw - 16px);
    max-height: calc(100vh - 16px); max-height: calc(100dvh - 16px);
    margin: 0 auto; padding: 14px; border-radius: 16px;
  }
  #swap-os-app #swapOsProjectDetailsModal .swap-os-project-detail-columns { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  #swap-os-app #swapOsProjectDetailsModal .swap-os-project-invoice-ledger form { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 380px) {
  #swap-os-app #swapOsProjectDetailsModal .swap-os-project-details-modal { padding: 11px; }
}


/* v11.01.0 — force the dynamically-created Project Details dialog to use the viewport, and keep budget API failures actionable. */
#swap-os-app #swapOsProjectDetailsModal.swap-os-project-details-backdrop { width:100% !important; max-width:none !important; }
#swap-os-app #swapOsProjectDetailsModal .swap-os-project-details-modal { width:calc(100vw - 48px) !important; max-width:1100px !important; min-width:0 !important; flex:0 1 1100px !important; }
#swap-os-app #swapOsProjectDetailsModal #swapOsProjectDetailsContent { width:100% !important; max-width:100% !important; min-width:0 !important; }
@media (max-width:700px) {
  #swap-os-app #swapOsProjectDetailsModal .swap-os-project-details-modal { width:calc(100vw - 16px) !important; max-width:calc(100vw - 16px) !important; flex:0 1 auto !important; }
}


/* v11.02.0 — responsive Project Details controls and reliable popup interaction. */
#swap-os-app #swapOsProjectDetailsModal[hidden] { display: none !important; }
#swap-os-app #swapOsProjectDetailsModal:not([hidden]) {
  position: fixed !important; inset: 0 !important; z-index: 100100 !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 100vw !important; height: 100vh !important; height: 100dvh !important;
  max-width: none !important; max-height: none !important; box-sizing: border-box !important;
  padding: clamp(8px, 2vw, 24px) !important; overflow: auto !important;
  background: rgba(2, 5, 15, .78) !important; backdrop-filter: blur(8px);
}
#swap-os-app #swapOsProjectDetailsModal:not([hidden]) .swap-os-project-details-modal {
  position: relative !important; display: block !important; flex: 0 1 1100px !important;
  width: min(1100px, calc(100vw - 32px)) !important;
  max-width: min(1100px, calc(100vw - 32px)) !important; min-width: 0 !important;
  max-height: calc(100vh - 32px) !important; max-height: calc(100dvh - 32px) !important;
  margin: auto !important; overflow-x: hidden !important; overflow-y: auto !important;
  overscroll-behavior: contain; box-sizing: border-box !important;
}
#swap-os-app #swapOsProjectDetailsModal .swap-os-modal-close {
  position: sticky; top: 0; float: right; z-index: 2; min-width: 40px; min-height: 40px;
  display: inline-flex; align-items: center; justify-content: center; cursor: pointer;
}
#swap-os-app #swapOsProjectDetailsModal [data-detail-edit-project],
#swap-os-app #swapOsProjectDetailsModal [data-close-project-details],
#swap-os-app #swapOsProjectDetailsModal [data-project-budget-save],
#swap-os-app #swapOsProjectDetailsModal [data-project-invoice-create] { min-height: 40px; cursor: pointer; }
#swap-os-app #swapOsProjectDetailsModal button:focus-visible { outline: 2px solid #a78bfa; outline-offset: 3px; }
@media (max-width: 700px) {
  #swap-os-app #swapOsProjectDetailsModal:not([hidden]) { align-items: flex-start !important; padding: 8px !important; }
  #swap-os-app #swapOsProjectDetailsModal:not([hidden]) .swap-os-project-details-modal {
    flex: 0 1 auto !important; width: calc(100vw - 16px) !important;
    max-width: calc(100vw - 16px) !important; max-height: calc(100dvh - 16px) !important;
    margin: 0 auto !important; padding: 14px !important; border-radius: 16px !important;
  }
  #swap-os-app #swapOsProjectDetailsModal .swap-os-project-detail-columns { grid-template-columns: minmax(0, 1fr) !important; }
}

/* v11.03.0: make project duplicate/delete actions visible in portfolio views */
#swap-os-app .swap-os-project-card-actions,#swap-os-app .swap-os-project-list-actions,#swap-os-app .swap-os-portfolio-timeline-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; min-width:0; }
#swap-os-app .swap-os-project-card-actions { margin-top:14px; }
#swap-os-app .swap-os-project-card-actions .swap-os-project-open-details { flex:1 1 150px; }
#swap-os-app .swap-os-project-card-actions button,#swap-os-app .swap-os-project-list-actions button,#swap-os-app .swap-os-portfolio-timeline-actions button { min-height:32px; }
#swap-os-app .swap-os-project-list-actions { justify-content:flex-start; }
#swap-os-app .swap-os-portfolio-timeline-actions { justify-content:flex-end; }
#swap-os-app .swap-os-project-list-head,#swap-os-app .swap-os-project-list-row { grid-template-columns:minmax(180px,2fr) minmax(100px,.9fr) minmax(120px,1fr) minmax(230px,1.5fr); }
@media(max-width:650px){#swap-os-app .swap-os-project-card-actions{display:grid;grid-template-columns:1fr 1fr}#swap-os-app .swap-os-project-card-actions .swap-os-project-open-details{grid-column:1/-1}#swap-os-app .swap-os-project-list-actions{grid-column:1/-1;grid-row:auto;display:flex;flex-wrap:wrap}#swap-os-app .swap-os-project-list-row{grid-template-columns:minmax(0,1fr) auto}#swap-os-app .swap-os-portfolio-timeline-actions{grid-column:1/-1;justify-content:flex-start}}


/* v11.04.0: tidy portfolio timeline actions and avoid repeating project actions on every date */
#swap-os-app .swap-os-portfolio-timeline-item {
  grid-template-columns: minmax(115px, .8fr) minmax(180px, 2fr) auto minmax(260px, auto);
  gap: 12px;
}
#swap-os-app .swap-os-portfolio-timeline-copy { min-width: 0; }
#swap-os-app .swap-os-portfolio-timeline-actions {
  display: flex; align-items: center; justify-content: flex-end; flex-wrap: nowrap;
  gap: 6px; min-width: 0; white-space: nowrap;
}
#swap-os-app .swap-os-portfolio-timeline-actions .swap-os-timeline-open,
#swap-os-app .swap-os-portfolio-timeline-actions [data-project-action="duplicate"],
#swap-os-app .swap-os-portfolio-timeline-actions .swap-os-timeline-delete {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 34px; width: auto; min-width: 68px; height: auto; flex: 0 0 auto;
  padding: 7px 10px; border-radius: 9px; font-size: 12px; line-height: 1.2;
}
#swap-os-app .swap-os-portfolio-timeline-actions .swap-os-timeline-delete {
  color: #ff9aa8; border: 1px solid rgba(251,113,133,.32);
  background: rgba(251,113,133,.07); cursor: pointer;
}
#swap-os-app .swap-os-portfolio-timeline-actions .swap-os-timeline-delete:hover {
  border-color: rgba(251,113,133,.7); background: rgba(251,113,133,.14);
}
@media (max-width: 1050px) {
  #swap-os-app .swap-os-portfolio-timeline-item {
    grid-template-columns: minmax(110px, .8fr) minmax(0, 1.8fr) auto;
  }
  #swap-os-app .swap-os-portfolio-timeline-actions { grid-column: 1 / -1; justify-content: flex-end; }
}
@media (max-width: 650px) {
  #swap-os-app .swap-os-portfolio-timeline-item { grid-template-columns: minmax(0,1fr) auto; gap: 10px; }
  #swap-os-app .swap-os-portfolio-timeline-date { grid-column: 1 / -1; }
  #swap-os-app .swap-os-portfolio-timeline-copy { grid-column: 1 / -1; grid-row: auto; }
  #swap-os-app .swap-os-portfolio-timeline-status { grid-column: 1; grid-row: auto; }
  #swap-os-app .swap-os-portfolio-timeline-actions { grid-column: 1 / -1; justify-content: flex-start; flex-wrap: wrap; }
}

/* v11.06.0 — portfolio timeline project-count clarity */
.swap-os-portfolio-timeline-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 2px;color:var(--swap-muted,#9aa8c2);font-size:12px}
.swap-os-portfolio-timeline-summary strong{color:var(--swap-text,#eef2ff);font-size:13px}
.swap-os-portfolio-undated{display:grid;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--swap-border,rgba(148,163,184,.18))}
.swap-os-portfolio-undated>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--swap-muted,#9aa8c2);font-size:12px}
.swap-os-portfolio-undated>div:first-child strong{color:var(--swap-text,#eef2ff);font-size:13px}
.swap-os-portfolio-timeline-item.is-undated{border-color:rgba(139,92,246,.25)}
.swap-os-portfolio-timeline-item.is-undated .swap-os-portfolio-timeline-date span{color:var(--swap-muted,#9aa8c2)}
@media(max-width:680px){.swap-os-portfolio-timeline-summary,.swap-os-portfolio-undated>div:first-child{align-items:flex-start;flex-direction:column;gap:4px}}

/* v11.08.0 — responsive milestone/campaign dialogs and reliable form affordances */
#swap-os-app #swapOsMilestoneModal, #swap-os-app #swapOsCampaignModal { position:fixed; inset:0; z-index:99999; display:grid; place-items:center; padding:24px; overflow-y:auto; background:rgba(2,6,17,.82); backdrop-filter:blur(8px); }
#swap-os-app #swapOsMilestoneModal[hidden], #swap-os-app #swapOsCampaignModal[hidden] { display:none !important; }
#swap-os-app #swapOsMilestoneModal .swap-os-modal, #swap-os-app #swapOsCampaignModal .swap-os-modal { width:min(100%,560px); max-width:560px; max-height:calc(100dvh - 48px); overflow-y:auto; overscroll-behavior:contain; margin:auto; padding:24px; border-radius:16px; }
#swap-os-app #swapOsMilestoneForm, #swap-os-app #swapOsCampaignForm { display:grid; grid-template-columns:minmax(0,1fr); gap:9px; }
#swap-os-app #swapOsMilestoneForm input, #swap-os-app #swapOsMilestoneForm select, #swap-os-app #swapOsCampaignForm input, #swap-os-app #swapOsCampaignForm select, #swap-os-app #swapOsCampaignForm textarea { min-width:0; width:100%; }
#swap-os-app #swapOsMilestoneForm button[type=submit], #swap-os-app #swapOsCampaignForm button[type=submit] { min-height:42px; justify-content:center; }
@media(max-width:600px){#swap-os-app #swapOsMilestoneModal, #swap-os-app #swapOsCampaignModal{align-items:end;padding:0;}#swap-os-app #swapOsMilestoneModal .swap-os-modal, #swap-os-app #swapOsCampaignModal .swap-os-modal{width:100%;max-width:none;max-height:92dvh;padding:24px 18px calc(20px + env(safe-area-inset-bottom,0px));border-radius:20px 20px 0 0;}#swap-os-app #swapOsMilestoneModal .swap-os-modal-actions, #swap-os-app #swapOsCampaignModal .swap-os-modal-actions{position:sticky;bottom:0;padding-top:10px;background:#111b2c;}}


/* v11.11.0 — portfolio readability and campaign schedule layout */
#swap-os-app .swap-os-project-campaign-schedule{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0;width:100%}
#swap-os-app .swap-os-campaign-schedule-item{display:grid;grid-template-columns:minmax(105px,145px) minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;width:100%;box-sizing:border-box}
#swap-os-app .swap-os-campaign-schedule-date{min-width:0;max-width:100%;overflow-wrap:anywhere}
#swap-os-app .swap-os-campaign-schedule-copy{display:flex;flex-direction:column;min-width:0;width:100%;overflow:hidden;gap:5px}
#swap-os-app .swap-os-campaign-schedule-copy strong{display:block;min-width:0;width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal;line-height:1.4}
#swap-os-app .swap-os-campaign-schedule-copy small{display:block;min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.4}
#swap-os-app .swap-os-campaign-schedule-item>.swap-os-outline-btn{justify-self:end;white-space:nowrap;min-width:64px}
#swap-os-app .swap-os-projects-workspace-grid{min-width:0;align-items:stretch}
#swap-os-app .swap-os-project-card{min-width:0;max-width:100%;box-sizing:border-box}
#swap-os-app .swap-os-project-card-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:8px;min-width:0}
#swap-os-app .swap-os-project-card-actions button{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
#swap-os-app .swap-os-project-card-actions .swap-os-project-open-details{flex:1 1 100%;min-height:40px}
#swap-os-app .swap-os-project-card-actions button:not(.swap-os-project-open-details){flex:1 1 calc(50% - 8px);min-height:36px}
#swap-os-app .swap-os-portfolio-timeline-item{min-width:0;box-sizing:border-box}
#swap-os-app .swap-os-portfolio-timeline-item>*,#swap-os-app .swap-os-portfolio-timeline-copy{min-width:0;overflow-wrap:anywhere}
#swap-os-app .swap-os-project-campaigns-panel,#swap-os-app .swap-os-project-milestones-panel,#swap-os-app .swap-os-portfolio-timeline{min-width:0;box-sizing:border-box}
@media(max-width:700px){
 #swap-os-app .swap-os-campaign-schedule-item{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:start}
 #swap-os-app .swap-os-campaign-schedule-date{grid-column:1/-1;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:8px}
 #swap-os-app .swap-os-campaign-schedule-copy{grid-column:1;grid-row:2}
 #swap-os-app .swap-os-campaign-schedule-item>.swap-os-outline-btn{grid-column:2;grid-row:2;align-self:center}
 #swap-os-app .swap-os-project-card-actions button:not(.swap-os-project-open-details){flex:1 1 calc(50% - 8px)}
}
@media(max-width:420px){#swap-os-app .swap-os-campaign-schedule-item{padding:10px}#swap-os-app .swap-os-campaign-schedule-copy strong{font-size:12px}#swap-os-app .swap-os-project-card-actions button:not(.swap-os-project-open-details){flex-basis:100%}}

/* v11.14.0 — campaign activity selection and due-date guidance */
#swap-os-app .swap-os-campaign-activity-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin-top:10px;}
#swap-os-app .swap-os-campaign-activity-tools label{display:flex;flex-direction:column;gap:7px;color:var(--swap-muted,#8da0bf);font-size:12px;font-weight:600;min-width:0;}
#swap-os-app .swap-os-campaign-activity-tools button{min-height:40px;white-space:nowrap;}
#swap-os-app .swap-os-campaign-deliverable-hint{font-size:11px;line-height:1.5;color:var(--swap-muted,#8da0bf);margin:8px 0 12px;}
#swap-os-app .swap-os-campaign-deliverable-hint strong{color:var(--swap-text,#eef3ff);font-weight:600;}
@media(max-width:520px){#swap-os-app .swap-os-campaign-activity-tools{grid-template-columns:1fr;}#swap-os-app .swap-os-campaign-activity-tools button{width:100%;}}

/* v11.18.0: compact per-deliverable edit affordance */
#swap-os-app .swap-os-deliverable-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0}
#swap-os-app .swap-os-deliverable-row .swap-os-deliverable-check{flex:1;min-width:0}
#swap-os-app .swap-os-deliverable-edit{flex:0 0 auto;min-height:26px;padding:3px 9px;font-size:11px;line-height:1.2}
@media(max-width:520px){#swap-os-app .swap-os-deliverable-row{gap:5px}#swap-os-app .swap-os-deliverable-edit{padding:4px 7px}}


/* v11.19.0 dedicated campaign deliverable editor */
#swap-os-app .swap-os-deliverable-editor-backdrop{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(3,7,16,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
#swap-os-app .swap-os-deliverable-editor{position:relative;width:min(100%,460px);max-height:calc(100dvh - 40px);overflow:auto;padding:25px;border:1px solid rgba(139,124,255,.28);border-radius:20px;background:linear-gradient(155deg,#151f33,#0b1221 75%);box-shadow:0 24px 90px rgba(0,0,0,.55);color:var(--swap-text,#eef3ff)}
#swap-os-app .swap-os-deliverable-editor h2{margin:5px 0 4px;font-size:22px;letter-spacing:-.025em}
#swap-os-app .swap-os-deliverable-editor-context{margin:0 0 20px;color:var(--swap-muted,#8da0bf);font-size:13px;overflow-wrap:anywhere}
#swap-os-app .swap-os-deliverable-editor-close{position:absolute;top:13px;right:14px;width:36px;height:36px;border:1px solid var(--swap-border,#26344b);border-radius:11px;background:rgba(255,255,255,.04);color:var(--swap-text,#eef3ff);font-size:24px;cursor:pointer}
#swap-os-app .swap-os-deliverable-editor form{display:grid;gap:9px}
#swap-os-app .swap-os-deliverable-editor label{margin-top:5px;color:var(--swap-muted,#8da0bf);font-size:12px;font-weight:700}
#swap-os-app .swap-os-deliverable-editor label span{font-weight:400}
#swap-os-app .swap-os-deliverable-editor input{box-sizing:border-box;width:100%;min-width:0;padding:12px;border:1px solid var(--swap-border,#26344b);border-radius:11px;background:rgba(4,10,22,.7);color:var(--swap-text,#eef3ff);font:inherit;color-scheme:dark}
#swap-os-app .swap-os-deliverable-editor-hint{margin:5px 0 8px;color:var(--swap-muted,#8da0bf);font-size:12px;line-height:1.5}
#swap-os-app .swap-os-deliverable-editor-error{margin:0;padding:10px 12px;border:1px solid rgba(255,105,125,.35);border-radius:10px;background:rgba(255,105,125,.08);color:#ffb8c1;font-size:12px}
#swap-os-app .swap-os-deliverable-editor-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:10px;padding-top:14px;border-top:1px solid var(--swap-border,#26344b)}
#swap-os-app .swap-os-deliverable-editor-actions button{min-height:42px;padding:10px 15px;border-radius:10px;cursor:pointer}
#swap-os-app .swap-os-deliverable-editor-actions button:disabled{opacity:.55;cursor:wait}
#swap-os-app .swap-os-deliverable-editor :focus-visible{outline:2px solid #a99cff;outline-offset:3px}
@media(max-width:600px){#swap-os-app .swap-os-deliverable-editor-backdrop{align-items:flex-end;padding:0}#swap-os-app .swap-os-deliverable-editor{width:100%;max-width:none;max-height:90dvh;padding:25px 18px calc(20px + env(safe-area-inset-bottom,0px));border-radius:22px 22px 0 0}#swap-os-app .swap-os-deliverable-editor-actions{position:sticky;bottom:0;background:#0d1628}}

/* Nil voice-first conversation surface */
 .swap-os-nil-dialog{position:fixed;inset:0;z-index:999999;background:rgba(2,7,18,.78);backdrop-filter:blur(12px);display:grid;place-items:center;padding:18px;color:#f1f5fd;font-family:'DM Sans',sans-serif}
 .swap-os-nil-dialog[hidden]{display:none}
.swap-os-nil-card{width:min(100%,520px);max-height:min(85vh,760px);display:flex;flex-direction:column;gap:14px;padding:22px;border:1px solid #34527b;border-radius:22px;background:radial-gradient(ellipse at 50% 0%,#23447c55,transparent 52%),#0a1222;box-shadow:0 25px 100px #0009;overflow:auto}
.swap-os-nil-card header{display:flex;align-items:center;gap:12px;border-bottom:1px solid #24334c;padding-bottom:14px}
.swap-os-nil-card header h2{margin:0;font-size:21px;color:#fff}.swap-os-nil-card header p{margin:3px 0 0;color:#9bb1d3;font-size:12px}
.swap-os-nil-orb{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#8bdcff,#3f66f2 45%,#171d54 72%);box-shadow:0 0 26px #448bff77;font-size:25px}
.swap-os-nil-close{margin-left:auto;border:1px solid #344766;background:#111e33;color:#eaf2ff;border-radius:10px;width:38px;height:38px;font-size:24px}
.swap-os-nil-thread{display:flex;flex-direction:column;gap:10px;min-height:150px;max-height:38vh;overflow:auto;padding:4px 2px}
.swap-os-nil-message{max-width:90%;padding:11px 13px;border-radius:14px;font-size:13px;line-height:1.55;white-space:pre-wrap}.swap-os-nil-message.is-nil{align-self:flex-start;background:#14223a;border:1px solid #263d5e}.swap-os-nil-message.is-user{align-self:flex-end;background:linear-gradient(120deg,#315fe2,#6355cb);color:#fff}
.swap-os-nil-status{margin:0;color:#9eb4d6;font-size:12px}.swap-os-nil-form{display:flex;gap:8px}.swap-os-nil-form input{flex:1;min-width:0;background:#070e1b;border:1px solid #304360;border-radius:12px;padding:12px;color:#fff;font:inherit}.swap-os-nil-form button,.swap-os-nil-listen{border:0;border-radius:12px;padding:11px 15px;background:linear-gradient(110deg,#347cf4,#6d60e8);color:#fff;font-weight:700}.swap-os-nil-controls{display:flex;gap:9px}.swap-os-nil-controls button{flex:1}.swap-os-nil-stop{border:1px solid #344766;border-radius:12px;padding:10px;background:transparent;color:#c3cee0}.swap-os-nil-card>small{font-size:10px;line-height:1.5;color:#7f92b2}
@media(max-width:600px){.swap-os-nil-card{padding:16px;border-radius:17px}.swap-os-nil-form{flex-wrap:wrap}.swap-os-nil-form input{flex-basis:100%}.swap-os-nil-form button{width:100%}}
