/* Calm interface over the complete Plan toolset. */
:root, :root[data-theme=dark] { --bg:#131617; --bg2:#1a1e1f; --card:#1c2021; --ink:#ecece5; --ink2:#c5cbc5; --muted:#929b98; --primary:#d9bd86; --primary2:#cba96c; --line:#313738; --line2:#424a49; --s2:#252b2b; --green:#85b9a2; --red:#e89589; --side:#16191a; --side-line:#2a3031; --radius:16px; }
html,body { background:var(--bg)!important; color:var(--ink); }
body { font-weight:400; }
.shell { grid-template-columns:208px minmax(0,1fr)!important; }
.main { padding:0 36px 36px!important; min-width:0; max-width:1500px; width:100%; margin-inline:auto; }
.sidebar { width:208px!important; padding:32px 20px 20px!important; background:#16191a!important; border-color:var(--line)!important; box-shadow:none!important; }
.brand { margin-bottom:36px!important; }
.brand .logo { width:40px!important; height:40px!important; background:transparent!important; border:0!important; box-shadow:none!important; }
.brand-copy strong { font-size:23px!important; letter-spacing:-.5px; }
.brand-copy small { font-size:11px!important; color:var(--muted); }
.plan-sidebar .nav { gap:4px; }
.plan-sidebar .nav button { display:flex; align-items:center; gap:11px; padding:10px 12px; border-radius:10px; text-align:start; min-height:42px; font-size:13px; color:var(--muted); }
.plan-sidebar .nav .ic { width:19px; height:19px; }
.plan-sidebar .nav button.active { color:var(--primary); background:#d9bd8612!important; font-weight:600; }
.nav button.active::before { display:none!important; }
.plan-sidebar .nav button:hover { background:#ffffff06; color:var(--ink); }
.nav-sep { height:1px; background:var(--line); margin:18px 12px!important; }
.plan-more-nav summary { padding:12px; font-size:12px; color:var(--muted); display:flex; align-items:center; justify-content:space-between; cursor:pointer; }
.plan-more-nav button { width:100%; }
.side-foot { border-top:0!important; margin-top:auto; padding-top:24px!important; }
.plan-settings-link { display:flex; align-items:center; gap:12px; padding:10px 12px; color:var(--muted); font-size:13px; }
.plan-save { display:block; padding:8px 12px; color:#718178; font-size:10px; }
.save-error { color:var(--red); }
.plan-topbar { margin:0 0 22px!important; padding:16px 0!important; min-height:62px; position:relative!important; background:transparent!important; border:0!important; box-shadow:none!important; backdrop-filter:none!important; display:flex; align-items:center; gap:8px; }
.plan-topbar>span:first-child { font-size:11px; color:var(--muted); }
.plan-topbar .btn { padding:7px 9px; min-height:32px; font-size:12px; }
kbd { font-family:inherit; font-size:10px; opacity:.5; margin-inline-start:18px; }
.foot { display:none!important; }
.btn { border-radius:9px!important; min-height:36px; font-weight:500!important; font-size:12px; gap:7px; box-shadow:none!important; }
.btn.primary { color:#202322!important; background:var(--primary)!important; border-color:var(--primary)!important; }
.btn.soft { background:#2b3231!important; color:var(--ink2)!important; border:1px solid #3a4240!important; }
.btn.ghost,.btn.text { color:var(--muted); background:transparent!important; border-color:transparent!important; }
.btn:hover { filter:brightness(1.12); }
.btn .ic { width:16px; height:16px; }
.icon-btn { border-radius:8px; color:var(--muted); }
.icon-btn .ic { width:17px; height:17px; }
.icon-btn:hover { background:var(--s2); color:var(--ink); }
input,textarea,select { border:1px solid var(--line)!important; border-radius:9px!important; background:var(--bg2)!important; color:var(--ink)!important; box-shadow:none!important; }
input:focus,textarea:focus,select:focus { border-color:var(--primary)!important; outline:2px solid #d9bd8615; }
input::placeholder,textarea::placeholder { color:#77827c; }
.plan-head { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:10px 0 28px; }
.eyebrow { color:var(--primary); font-size:10px; letter-spacing:.2px; display:block; margin-bottom:7px; }
.plan-head h1 { font-size:28px; font-weight:650; letter-spacing:-.8px; line-height:1.55; margin:0; }
.plan-head p { color:var(--muted); font-size:12px; margin:6px 0 0; line-height:1.8; }
.plan-head .btn-row { flex-wrap:wrap; }
.plan-head.workspace { margin-top:4px; }
.plan-back { font-size:11px; color:var(--muted); display:flex; align-items:center; gap:6px; margin-bottom:10px; }
.plan-back .ic { width:14px; height:14px; }
.plan-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:0 0 30px; }
.plan-metrics button { display:flex; flex-direction:column; gap:3px; text-align:start; padding:17px 22px; border:1px solid var(--line); border-radius:14px; background:linear-gradient(130deg,#202627,#1b2021); }
.plan-metrics small { font-size:11px; color:var(--muted); }
.plan-metrics b { font-size:28px; font-weight:550; color:var(--ink); margin:8px 0 0; }
.plan-metrics em { font-size:17px; font-style:normal; color:var(--muted); }
.plan-metrics span { font-size:10px; color:var(--muted); }
.plan-columns { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:24px; align-items:start; }
.plan-columns>div,.plan-columns>aside { min-width:0; }
.plan-section { background:var(--card); border:1px solid var(--line); padding:20px; border-radius:14px; margin-bottom:20px; overflow:hidden; }
.plan-section-head { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:14px; }
.plan-section h2, .plan-section-head h2 { font-size:14px; font-weight:600; margin:0; }
.plan-section-head .btn.text { min-height:24px; padding:3px; font-size:10px; }
.plan-list { display:flex; flex-direction:column; }
.plan-quick { display:flex; gap:8px; align-items:center; border-bottom:1px solid var(--line); padding:0 0 12px; margin-bottom:2px; }
.plan-quick .ic { width:16px; height:16px; color:var(--muted); flex:none; }
.plan-quick input { border:0!important; background:transparent!important; outline:0; min-width:0; flex:1; padding:6px; font-size:12px; }
.plan-quick select { font-size:11px; max-width:140px; min-height:34px; padding:5px; }
.plan-task,.plan-check-row { display:flex; gap:10px; align-items:center; padding:13px 0; border-bottom:1px solid #ffffff07; min-height:56px; flex-wrap:wrap; }
.plan-task:last-child,.plan-check-row:last-child { border-bottom:0; }
.plan-grip { flex:none; color:#697670; cursor:grab; user-select:none; font-size:19px; display:inline-flex; align-items:center; justify-content:center; width:20px; height:28px; opacity:.6; }
.plan-grip:active { cursor:grabbing; }
.plan-item:hover .plan-grip { opacity:1; }
.plan-item-main { flex:1; min-width:100px; display:flex; flex-direction:column; text-align:start; gap:4px; color:var(--ink); }
.plan-item-main b { font-size:12px; font-weight:500; line-height:1.7; }
.plan-item-main small { font-size:10px; color:var(--muted); line-height:1.7; }
.plan-links { display:flex; flex-wrap:wrap; gap:5px; }
.plan-links button { display:flex; align-items:center; gap:4px; font-size:9px; border-radius:5px; background:#ffffff05; padding:4px 6px; color:#a5b9ae; max-width:120px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.plan-links .ic { width:11px; height:11px; }
.is-done .plan-item-main>b { text-decoration:line-through; color:var(--muted); }
.plan-task .check, .plan-check-row .check { width:18px!important; height:18px!important; background:transparent!important; border-color:#627169!important; }
.plan-task .check:checked,.plan-check-row .check:checked { background:var(--primary)!important; }
.plan-menu-btn { opacity:.4; }
.plan-task:hover .plan-menu-btn { opacity:1; }
.plan-project-grid,.plan-goal-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:18px; margin-bottom:24px; }
.plan-project-grid.compact { grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); margin:0; gap:12px; }
.plan-project,.plan-goal { display:flex; flex-direction:column; min-width:0; border:1px solid var(--line); border-radius:14px; background:var(--card); overflow:hidden; transition:border-color .15s,transform .15s; }
.plan-project:hover,.plan-goal:hover { border-color:#58655e; transform:translateY(-2px); }
.plan-card-top { display:flex; align-items:center; padding:10px 13px 0; gap:7px; }
.plan-card-top .icon-btn { width:26px; height:26px; }
.plan-tag { display:inline-block; background:#d9bd860c; color:#b6ac90; border-radius:5px; padding:3px 7px; font-size:9px; }
.plan-project-main { display:block; width:100%; text-align:start; padding:12px 20px 14px; }
.plan-project-main small { font-size:10px; color:var(--muted); }
.plan-project-main h2 { font-size:17px; line-height:1.8; margin:5px 0 20px; font-weight:600; color:var(--ink); }
.plan-project-main p { font-size:11px; color:var(--muted); line-height:1.9; margin:-10px 0 20px; }
.plan-progress { display:block; height:4px; border-radius:3px; overflow:hidden; background:#ffffff0a; }
.plan-progress>i { display:block; height:100%; border-radius:3px; background:var(--project-accent,var(--primary)); }
.plan-meta { display:flex; justify-content:space-between; gap:6px; margin-top:10px; font-size:10px; color:var(--muted); }
.plan-meta b { color:var(--primary); }
.plan-next { display:flex; align-items:center; text-align:start; gap:8px; font-size:11px; color:var(--ink2); margin:0 20px 16px; line-height:1.7; }
.plan-next .ic { width:13px; height:13px; color:var(--primary); flex:none; }
.plan-card-bottom { margin-top:auto; display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--line); padding:11px 20px; color:var(--muted); font-size:10px; gap:8px; }
.plan-card-bottom .ic { width:13px; height:13px; }
.plan-card-bottom>span,.plan-text-btn { display:flex; align-items:center; gap:5px; }
.plan-text-btn { color:var(--primary); }
.plan-goal { padding-bottom:0; }
.plan-goal .plan-project-main { flex:1; }
.plan-event { display:flex; align-items:center; gap:8px; padding:13px 0; border-bottom:1px solid #ffffff08; }
.plan-event:last-child { border:0; }
.plan-event-value { font-size:11px; color:var(--primary); flex:none; }
.plan-event .plan-item-main b { font-size:11px; }
.plan-link .ic { width:13px; height:13px; color:var(--muted); }
.plan-fin-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:20px; }
.plan-fin-summary>button { border:1px solid var(--line); background:var(--card); border-radius:12px; padding:18px; text-align:start; min-width:0; }
.plan-fin-summary span { font-size:11px; color:var(--muted); display:block; margin-bottom:10px; }
.plan-fin-summary b { font-size:18px; font-weight:500; }
.plan-fin-mini .plan-fin-summary { grid-template-columns:1fr; gap:0; margin:0; }
.plan-fin-mini .plan-fin-summary button { display:flex; justify-content:space-between; border:0; border-bottom:1px solid #ffffff08; border-radius:0; padding:10px 0; background:transparent; }
.plan-fin-mini .plan-fin-summary b { font-size:12px; }
.plan-fin-mini .plan-fin-summary span { margin:0; font-size:10px; }
.plan-reflect { border-top:1px solid var(--line); padding-top:16px; }
.plan-reflect summary { display:flex; align-items:center; justify-content:space-between; font-size:11px; color:var(--muted); cursor:pointer; }
.plan-reflect .btn-col { padding-top:14px; }
.plan-reflect .ic { width:13px; height:13px; }
.plan-toolbar { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:0 0 20px; }
.plan-toolbar .tabs { background:transparent; padding:0; }
.plan-toolbar .btn { min-height:32px; font-size:11px; }
.plan-toolbar small { margin-inline-start:auto; font-size:10px; }
.plan-live { display:flex; gap:14px; align-items:center; padding:14px 20px; border:1px solid #8cb99c40; border-radius:12px; background:#83b59c0c; margin-bottom:20px; }
.plan-live strong { font-size:22px; font-variant-numeric:tabular-nums; font-weight:500; direction:ltr; }
.live-dot { display:block; height:7px; width:7px; border-radius:50%; background:var(--green); flex:none; }
.plan-work-tabs { display:flex; flex-wrap:wrap; gap:6px; padding:0 0 18px; margin-bottom:22px; border-bottom:1px solid var(--line); }
.plan-work-tabs .btn { font-size:11px; min-height:32px; }
.plan-workspace-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:26px; }
.plan-workspace-stats button { text-align:start; border:1px solid var(--line); padding:15px 20px; border-radius:12px; background:var(--card); min-width:0; }
.plan-workspace-stats b { font-weight:500; font-size:21px; display:block; line-height:1.8; }
.plan-workspace-stats span { color:var(--muted); font-size:10px; }
.plan-workspace-stats button:last-child b { font-size:17px; color:var(--primary); }
.plan-phase { display:flex; width:100%; align-items:center; gap:12px; padding:13px 0; border-bottom:1px solid var(--line); text-align:start; }
.plan-phase>.ic { width:18px; height:18px; color:var(--primary); }
.plan-phase>span { flex:1; min-width:0; }
.plan-phase b { font-size:11px; font-weight:500; }
.plan-phase small { display:block; font-size:10px; color:var(--muted); margin:5px 0 8px; }
.plan-phase .plan-progress { height:3px; }
.plan-add-phases { margin-top:12px; }
.plan-add-phases .btn { font-size:10px; }
.plan-phase-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.plan-subtitle { font-size:12px; margin:20px 0 8px; color:var(--muted); }
.plan-board { display:grid; grid-template-columns:repeat(4,minmax(230px,1fr)); gap:16px; overflow-x:auto; margin-bottom:24px; align-items:start; }
.plan-board-column { padding:12px; background:#ffffff03; border-radius:12px; border:1px dashed var(--line); min-height:180px; }
.plan-board-column h3 { color:var(--muted); font-size:12px; font-weight:500; margin:0 0 15px; }
.plan-board-column .plan-project { margin-bottom:12px; }
.plan-drop-hint { font-size:9px; text-align:center; color:#6e7c75; padding:10px; }
.is-dragging { opacity:.45; }
.plan-accounts { display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:12px; }
.plan-account { display:flex; flex-wrap:wrap; align-items:center; gap:12px; border:1px solid #46504b; border-radius:12px; padding:18px; background:#242b29; text-align:start; color:#e7efe9; }
.plan-account-icon { width:36px; height:36px; border-radius:9px; display:grid; place-items:center; background:color-mix(in srgb,var(--account-accent) 20%,#242b29); color:#e7efe9; }
.plan-account-icon .ic { width:19px; height:19px; }
.plan-account b { font-size:13px; display:block; color:#edf3ef; }
.plan-account small { font-size:10px; color:#acbcb2; }
.plan-account strong { flex:1 0 100%; padding-top:9px; font-weight:550; font-size:22px; color:#eef5ed; }
.plan-resolve { max-width:740px; }
.plan-connection { display:flex; align-items:center; gap:8px; padding:14px 0; }
.plan-connection .live-dot { background:var(--muted); }
.plan-connection.connected .live-dot { background:var(--green); }
.plan-connection b { font-size:13px; }
.plan-resolve p { font-size:12px; line-height:2; }
.plan-empty { display:flex; align-items:center; justify-content:center; flex-direction:column; gap:10px; padding:34px 20px; color:var(--muted); }
.plan-empty>.ic { width:24px; height:24px; opacity:.45; }
.plan-empty p { margin:0; font-size:12px; text-align:center; }
.plan-empty .btn { margin-top:6px; }
.plan-autosave { color:#84ad94; font-size:10px; margin-inline-start:auto; }
.plan-quote { text-align:center; font-family:'Snell Roundhand',cursive; color:#9ba98f; font-size:15px; margin:28px 0 8px; }
.plan-native-settings { margin-top:24px; }
.plan-native-settings .btn-row { margin-top:18px; }
.plan-phase-pick { display:flex; gap:12px; font-size:12px; flex-wrap:wrap; }
.plan-phase-pick label { display:flex; align-items:center; gap:6px; }
.card,.timer-hero,.mx-card,.ws-hero { box-shadow:none!important; background:var(--card)!important; border:1px solid var(--line)!important; }
.card::before,.card::after,.btn.primary::before,.btn.primary::after { display:none!important; }
.mx-balance { background:var(--card)!important; border-color:var(--line)!important; }
.acct-card { background:#252e2a!important; color:#edf3ef!important; border:1px solid #4d5f53!important; }
.acct-card * { color:inherit!important; }
.modal { border-radius:18px!important; border:1px solid var(--line); background:#1c2221!important; box-shadow:0 24px 100px #0009!important; }
.modal-head { border-color:var(--line); }
.modal-head h2 { font-size:17px; font-weight:600; }
.modal-sub { font-size:11px; }
.modal-body { padding:24px!important; }
.modal label { font-size:12px; }
.modal .field>label { color:var(--ink2); }
.form-actions { border-color:var(--line)!important; }
.focus-mode .fm-top { position:absolute; top:18px; left:20px; right:20px; display:flex!important; justify-content:space-between; z-index:10; }
.focus-mode .fm-top .icon-btn { width:44px; height:44px; background:var(--s2); }
.focus-mode .fm-top .icon-btn .ic { width:22px; height:22px; }
.view .page-head h1 { font-size:25px; }
.view .page-head p { font-size:12px; }
@media(min-width:761px) { .m-bar,.m-tabs,.m-fab,.tabbar { display:none!important; } }
@media(max-width:1100px) { .main { padding:0 24px 28px!important; } .plan-columns { grid-template-columns:minmax(0,1fr) 270px; gap:16px; } .plan-project-grid.compact { grid-template-columns:1fr; } .plan-phase-columns { grid-template-columns:1fr; } }
@media(max-width:900px) { .plan-columns { grid-template-columns:1fr; } .plan-columns>aside { display:grid; grid-template-columns:1fr 1fr; gap:16px; } .plan-project-grid.compact { grid-template-columns:repeat(2,minmax(0,1fr)); } .plan-head { flex-wrap:wrap; gap:14px; } .plan-workspace-stats { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) {
 .shell { display:block!important; } .sidebar,.plan-topbar { display:none!important; } .main { padding:0 16px 110px!important; } .m-bar,.m-tabs { display:flex!important; } .m-fab { display:grid!important; }
 .plan-head { padding-top:12px; margin-bottom:20px; } .eyebrow { display:none; } .plan-head h1 { font-size:24px; } .plan-head p { font-size:12px; }
 .plan-head .btn-row { gap:6px; } .plan-head .btn { min-height:36px; font-size:12px; } .plan-metrics { gap:8px; margin-bottom:18px; } .plan-metrics button { padding:12px; } .plan-metrics b { font-size:21px; } .plan-metrics small { font-size:10px; } .plan-metrics span { font-size:9px; }
 .plan-columns>aside { display:block; } .plan-section { padding:16px; margin-bottom:14px; } .plan-project-grid.compact,.plan-project-grid,.plan-goal-grid { grid-template-columns:1fr; } .plan-task { gap:7px; } .plan-links { flex-basis:100%; margin-inline-start:54px; } .plan-item-main b { font-size:14px; }
 .plan-fin-summary { gap:8px; } .plan-fin-summary>button { padding:12px; } .plan-fin-summary b { font-size:14px; } .plan-live { flex-wrap:wrap; padding:12px; gap:8px; } .plan-live .plan-item-main { min-width:140px; } .plan-work-tabs { overflow:auto; flex-wrap:nowrap; } .plan-work-tabs .btn { white-space:nowrap; }
 .plan-toolbar { gap:5px; } .plan-toolbar .btn { font-size:12px; } .plan-quick input { font-size:16px; } .plan-workspace-stats { gap:8px; } .plan-workspace-stats button { padding:12px; } .plan-workspace-stats b { font-size:21px; }
 .plan-phase-columns { display:block; } .modal-body { padding:18px!important; } .focus-mode .fm-top { top:calc(env(safe-area-inset-top) + 15px); }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

/* Paint immediately even if macOS opens the window in the background. */
.view,.card,.kpi,.mx-main,.focus-mode { animation:none!important; opacity:1!important; transform:none!important; }
.plan-item-main b { font-size:13px; }
.plan-project-main small,.plan-item-main small { font-size:11px; }
.plan-card-bottom,.plan-meta { font-size:11px; }
.plan-quote { font-family:Farisi,'Snell Roundhand',cursive; font-size:18px; }
:root[data-theme=light] { --bg:#f2f2ec; --bg2:#eaece5; --card:#fbfcf7; --ink:#24332d; --ink2:#3b4f44; --muted:#69796e; --primary:#a7834b; --line:#d8ded3; --line2:#b8c5b6; --s2:#e5eadf; --green:#3d7556; --red:#b0584b; --side:#e9ede4; color-scheme:light; }
:root[data-theme=light] .sidebar { background:var(--side)!important; }
:root[data-theme=light] .plan-topbar { color:var(--ink); }
:root[data-theme=light] .plan-metrics button { background:var(--card); }
:root[data-theme=light] .plan-task,:root[data-theme=light] .plan-event,:root[data-theme=light] .plan-check-row { border-color:var(--line); }
:root[data-theme=light] .modal { background:var(--card)!important; }
:root[data-theme=light] .plan-account { background:#e5ece1; border-color:#aabda7; color:#24332d; }
:root[data-theme=light] .plan-account b,:root[data-theme=light] .plan-account strong { color:#24332d; }
:root[data-theme=light] .plan-account small { color:#4d6352; }

.fm-top [data-a="focus:exit"]{width:auto;min-width:90px;gap:7px;position:relative;z-index:2;font-size:12px;}.fm-top{z-index:2;flex-shrink:0;}

/* Plan Pro 1.10 — quick reviews, completion and readable financial themes. */
.plan-topbar{position:sticky!important;top:0;z-index:30;background:var(--bg)!important;}
.plan-topbar .m-heart{display:grid!important;position:relative;width:38px;height:38px;flex:none;margin-inline-end:4px;}
.plan-daily-reviews{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px;padding:15px 18px;border:1px solid var(--line);border-radius:12px;background:var(--card);}
.plan-daily-reviews>div:first-child{display:flex;flex-direction:column;gap:4px;}
.plan-daily-reviews b{font-size:13px;font-weight:550;}.plan-daily-reviews small{font-size:10px;color:var(--muted);}
.plan-review-buttons{display:flex;gap:7px;}.plan-review-buttons button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 12px;border-radius:8px;border:1px solid var(--line);color:var(--ink2);background:var(--bg2);font-size:12px;}
.plan-review-buttons .ic{width:16px;height:16px;}.plan-review-buttons .reviewed{color:var(--green);border-color:var(--green);}
.plan-project-complete{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--ink2);margin:0;cursor:pointer;}
.plan-project-complete .check,.plan-next .check{width:20px!important;height:20px!important;border-color:var(--muted)!important;flex:none;}
.plan-project-complete .check:checked{background:var(--primary)!important;border-color:var(--primary)!important;}
.plan-next button{text-align:start;font-size:12px;line-height:1.7;color:var(--ink2);flex:1;}
.plan-card-top .plan-tag{font-size:10px;padding:3px 5px;}.plan-card-top{flex-wrap:wrap;}
#app .view-money .acc-card{background:var(--card)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-inline-start:5px solid var(--c,var(--primary))!important;box-shadow:none!important;}
#app .view-money .acc-card::after{display:none!important;}
#app .view-money .acc-card strong,#app .view-money .acc-card>b,#app .view-money .acc-top,#app .view-money .acc-top em{color:var(--ink)!important;opacity:1!important;}
#app .view-money .acc-card small{color:var(--ink2)!important;opacity:1!important;}
#app .view-money .acc-card .acc-top>span{background:var(--bg2)!important;color:var(--ink)!important;border:1px solid var(--line);}
#app .view-money .acc-card.archived{opacity:1!important;filter:none!important;}
#app .view-money .cat-list>button{background:var(--card)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-inline-start:4px solid var(--c,var(--primary))!important;}
#app .view-money .cat-list>button span{color:var(--ink)!important;}#app .view-money .cat-list>button em{color:var(--ink2)!important;}
#app .view-money .cat-list>button>.ic{color:var(--ink2)!important;}
#modalRoot .cat-grid label{color:var(--ink)!important;background:var(--card)!important;border:1px solid var(--line)!important;}
#modalRoot .cat-grid label>span{background:var(--bg2)!important;color:var(--ink)!important;border-inline-start:4px solid var(--c,var(--primary))!important;}
#modalRoot .cat-grid label em,#modalRoot .cat-add em{color:var(--ink)!important;}
#modalRoot .cat-grid label:has(input:checked){outline:2px solid var(--primary);outline-offset:-2px;background:var(--s2)!important;}
:root[data-theme=light] .plan-account-icon{background:#d4dfd0!important;color:#24332d!important;}
:root[data-theme=light] .btn.soft{background:var(--s2)!important;color:var(--ink)!important;border-color:var(--line2)!important;}
:root[data-theme=light] .plan-tag{background:#e4eadf;color:#445140;}
:root[data-theme=light] .plan-project-complete{color:var(--ink);}
:root[data-theme=light] .btn:hover{filter:none;}
@media(max-width:760px){.plan-daily-reviews{align-items:stretch;flex-direction:column;gap:10px;padding:14px;margin-bottom:16px;}.plan-daily-reviews small{display:none;}.plan-review-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;}.plan-review-buttons button{padding:8px 4px;font-size:11px;min-height:44px;}.plan-card-top{padding-top:12px;}.plan-project-complete{min-height:32px;font-size:11px;}.plan-project-complete .check,.plan-next .check{width:22px!important;height:22px!important;}.plan-next{min-height:44px;}.plan-topbar{display:none!important;}}

.plan-update-notice{position:fixed;bottom:24px;left:24px;z-index:200;background:var(--card);color:var(--ink);border:1px solid var(--primary);border-radius:12px;padding:12px 18px;font:inherit;font-size:12px;box-shadow:0 8px 25px #0003;}@media(max-width:760px){.plan-update-notice{bottom:calc(90px + env(safe-area-inset-bottom));left:16px;right:16px;}}
@media(max-width:760px){.m-bar-title{flex:1;min-width:0;}.m-bar-title b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.m-bar-side{flex:none;}.m-bar-side .m-heart{width:38px;height:38px;flex:none;}}

@font-face{font-family:PlanAlmas;src:url("fonts/Almas.ttf") format("opentype");font-display:swap;font-weight:400;}
.plan-quote{font-family:PlanAlmas,Tahoma,sans-serif!important;font-size:20px;line-height:1.9;}
.plan-project-grid.is-list{display:flex;flex-direction:column;gap:8px;}.is-list .plan-project{display:grid;grid-template-columns:180px minmax(180px,1fr) minmax(160px,.8fr) 110px;align-items:center;padding:9px 12px;gap:12px;}.is-list .plan-card-top{padding:0;gap:5px;}.is-list .plan-card-top .plan-tag{display:none;}.is-list .plan-project-main{padding:0;text-align:start;}.is-list .plan-project-main h2{font-size:14px;margin:2px 0;}.is-list .plan-project-main .plan-progress{height:3px;margin:5px 0;}.is-list .plan-meta{font-size:10px;}.is-list .plan-next,.is-list .plan-card-bottom{margin:0;padding:0;border:0;}.is-list .plan-card-bottom>span{display:none;}.plan-goal-grid.is-list{grid-template-columns:1fr;gap:8px;}.is-list .plan-goal{padding:10px 16px;}
.plan-fin-summary>div{padding:12px;border:1px solid var(--line);border-radius:8px;}
@media(max-width:900px){.is-list .plan-project{grid-template-columns:135px minmax(0,1fr);gap:5px 10px;}.is-list .plan-project-main{grid-column:2;grid-row:1 / span 2;}.is-list .plan-next{grid-column:1 / -1;}.is-list .plan-card-bottom{grid-column:1;grid-row:2;}.is-list .plan-project-main h2{font-size:13px;}.is-list .plan-project-complete{font-size:10px;}}

.plan-project{position:relative;}.plan-swipe-delete{display:none;}.is-list .plan-project{touch-action:pan-y;}.is-list .plan-project.plan-swipe-open,.is-list .plan-goal.plan-swipe-open{padding-left:86px;}.is-list .plan-swipe-open>.plan-swipe-delete{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;top:0;bottom:0;left:0;width:74px;border:0;border-radius:10px 0 0 10px;background:#b44646;color:white;font:inherit;font-size:12px;}.plan-swipe-delete .ic{width:19px;height:19px;}.btn.danger{background:#a93838;color:#fff;border-color:#a93838;}
/* Compact list rows keep all primary actions available. */
.is-list .plan-card-top .grow,.is-list .plan-project-complete span{display:none;}.is-list .plan-card-top{flex-wrap:nowrap;}.is-list .plan-project-main h2,.is-list .plan-project-main>small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.is-list .plan-project-main .plan-meta{gap:6px;flex-wrap:nowrap;white-space:nowrap;}.is-list .plan-project-main{min-width:0;}.is-list .plan-next{min-width:0;}.is-list .plan-next button{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.is-list .plan-card-bottom .plan-text-btn{font-size:11px;}.is-list .plan-project-complete{min-height:24px;}
@media(max-width:900px){.is-list .plan-project{grid-template-columns:105px minmax(0,1fr);}.is-list .plan-next{min-height:30px;}.is-list .plan-card-bottom{min-height:24px;}.is-list .plan-project-main h2{font-size:12px;}.is-list .plan-project-main>small{font-size:9px;}.is-list .plan-next button{font-size:10px;}}

.plan-invoice-total{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0 8px;font-size:12px;}.plan-invoice-total b{font-size:16px;}.plan-invoice-summary .card-head h2{font-size:14px;}.plan-invoice-summary .card-head h2 small{font-size:10px;}

:root{--plan-safe-top:env(safe-area-inset-top,0px);--plan-safe-bottom:env(safe-area-inset-bottom,0px);}
.plan-day-quote{font-family:PlanAlmas,Tahoma,sans-serif;font-size:clamp(18px,1.7vw,21px);line-height:1.9;font-weight:400;text-align:center;color:var(--ink2);margin:0 0 22px;padding:6px 16px;}
form>.plan-day-quote{padding:8px 4px 16px;margin-bottom:12px;border-bottom:1px solid var(--line);}
.is-list .plan-goal{display:grid;grid-template-columns:130px minmax(0,1fr) 140px;align-items:center;gap:12px;position:relative;touch-action:pan-y;}.is-list .plan-goal .plan-project-main{padding:0;}.is-list .plan-goal .plan-project-main p{display:none;}.is-list .plan-goal .plan-card-bottom{margin:0;padding:0;border:0;}.is-list .plan-goal .plan-card-top{padding:0;}
@media(max-width:760px){.m-bar{padding-top:calc(var(--plan-safe-top) + 12px)!important;top:0!important;}.main{padding-bottom:calc(110px + var(--plan-safe-bottom))!important;}.m-tabs{padding-bottom:calc(10px + var(--plan-safe-bottom))!important;}.m-fab{bottom:calc(86px + var(--plan-safe-bottom))!important;}.modal-backdrop{padding:calc(var(--plan-safe-top) + 12px) 12px calc(var(--plan-safe-bottom) + 12px)!important;}.modal-backdrop .modal{max-height:calc(100dvh - var(--plan-safe-top) - var(--plan-safe-bottom) - 24px)!important;}.focus-mode{padding-top:calc(var(--plan-safe-top) + 18px)!important;padding-bottom:calc(var(--plan-safe-bottom) + 18px)!important;}.fm-top{top:auto!important;}.is-list .plan-goal{grid-template-columns:105px minmax(0,1fr);gap:6px 10px;}.is-list .plan-goal .plan-card-bottom{grid-column:1 / -1;font-size:11px;}.plan-day-quote{font-size:19px;padding:4px 8px;}}
@supports(-webkit-touch-callout:none){@media(display-mode:standalone) and (orientation:portrait){:root{--plan-safe-top:max(env(safe-area-inset-top,0px),54px);}}}
/* Compact financial workspace and obligation-linked person details. */
.plan-accounts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;}
.plan-account,.plan-account.acc-card{display:grid!important;grid-template-columns:28px minmax(0,1fr);gap:5px 8px;padding:12px!important;min-height:0!important;text-align:right;background:var(--card)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-inline-start:3px solid var(--account-accent)!important;border-radius:10px!important;}
.plan-account .plan-account-icon{width:28px;height:28px;grid-row:1 / 3;background:var(--bg2)!important;color:var(--ink)!important;border-radius:7px;}
.plan-account-name{min-width:0;}.plan-account b{display:block;font-size:12px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)!important;}
.plan-account small{display:block;font-size:10px;color:var(--ink2)!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.plan-account strong{grid-column:2;padding:0!important;font-size:14px!important;font-weight:600!important;color:var(--ink)!important;overflow-wrap:anywhere;}
.plan-fin-modules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}.plan-fin-modules .btn{justify-content:flex-start;padding:14px;font-size:12px;}.plan-fin-modules .icon{flex:none;}
.plan-fin-desks{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start;}.plan-fin-desks summary,.plan-person-history summary,.plan-tx-tags summary{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;font-weight:550;padding:6px 0;}.plan-fin-desks summary small,.plan-person-history summary small{margin-inline-start:auto;color:var(--ink2);font-size:11px;}.plan-fin-desks details[open]>summary{margin-bottom:16px;}.plan-fin-tags{display:flex;gap:6px;flex-wrap:wrap;}.plan-fin-tags .btn{font-size:11px;padding:5px 9px;min-height:32px;}.plan-fin-desks .cat-list{grid-template-columns:1fr;}
.plan-account-balance{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0 20px;}.plan-account-balance span{font-size:12px;color:var(--ink2);}.plan-account-balance b{font-size:18px;overflow-wrap:anywhere;}.plan-account-actions{display:flex;gap:8px;}.plan-account-actions .btn:not(:last-child){flex:1;}.plan-account-sheet .plan-toolbar{margin:14px 0 0;}
.plan-person-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin-bottom:14px;}.plan-person-summary span{font-size:11px;}.plan-person-summary b{font-size:15px!important;overflow-wrap:anywhere;}.plan-person-search{margin:12px 0;width:100%;}.plan-person-search input{min-width:0;width:100%;}.plan-person-row{display:flex;align-items:center;gap:10px;text-align:right;width:100%;border:0;border-bottom:1px solid var(--line);padding:13px 0;color:var(--ink);background:transparent;}.plan-person-row .plan-item-main{min-width:0;}.plan-person-row .plan-item-main b{font-size:13px;}.plan-person-balances{display:flex;flex-direction:column;align-items:flex-end;gap:4px;max-width:55%;}.plan-person-balances small{font-size:11px;overflow-wrap:anywhere;}.plan-person-row>.icon{flex:none;width:14px;}
.plan-person-net{display:flex;justify-content:space-between;gap:12px;font-size:12px;padding:4px 0 14px;border-bottom:1px solid var(--line);}.plan-person-net b{font-size:13px;overflow-wrap:anywhere;}.plan-person-title{font-size:13px;margin:16px 0 4px;}.plan-person-obligation{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px 8px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);}.plan-person-obligation .plan-item-main{grid-column:1 / -1;min-width:0;}.plan-person-obligation b{font-size:12px;line-height:1.8;overflow-wrap:anywhere;}.plan-person-obligation small{font-size:10px;}.plan-person-obligation strong{font-size:13px;overflow-wrap:anywhere;}.plan-person-obligation .btn{font-size:11px;min-height:32px;}.plan-person-history{margin-top:18px;}.plan-person-history-row{display:flex;align-items:center;gap:10px;width:100%;padding:12px 0;background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--line);text-align:right;}.plan-person-history-row b{font-size:11px;overflow-wrap:anywhere;}.plan-person-history-row strong{font-size:12px;max-width:43%;overflow-wrap:anywhere;}.plan-person-footer .btn{font-size:11px;}.plan-tx-tags{margin:16px 0;}.plan-tx-tags .field{margin:10px 0;}
@media(max-width:760px){.plan-accounts{grid-template-columns:repeat(2,minmax(0,1fr));}.plan-account,.plan-account.acc-card{padding:10px!important;grid-template-columns:24px minmax(0,1fr);gap:4px 6px;}.plan-account .plan-account-icon{width:24px;height:24px;}.plan-account strong{font-size:12px!important;}.plan-account b{font-size:11px!important;}.plan-account small{font-size:9px;}.plan-fin-modules{grid-template-columns:repeat(2,minmax(0,1fr));}.plan-fin-desks{grid-template-columns:1fr;gap:0;}.plan-person-sheet .modal-body{padding:16px!important;}.plan-person-summary>div{padding:10px;}.plan-person-summary b{font-size:13px!important;}.plan-person-row .plan-item-main b{font-size:12px;}}

.plan-fin-desks summary::after,.plan-person-history summary::after,.plan-tx-tags summary::after{content:'⌄';margin-inline-start:auto;color:var(--ink2);font-size:16px;}.plan-fin-desks details[open]>summary::after,.plan-person-history[open]>summary::after,.plan-tx-tags[open]>summary::after{transform:rotate(180deg);}.plan-fin-desks summary small,.plan-person-history summary small{margin-inline-start:auto;}.plan-fin-desks summary small+*,.plan-person-history summary small+*{margin-inline-start:0;}

/* Useful detail, generous touch targets, and a quiet daily workspace. */
.plan-start{padding-top:4px;}
.plan-start-hero.plan-daily-reviews{display:block;position:relative;padding:24px 26px 20px;border-radius:18px;margin-bottom:14px;background:radial-gradient(ellipse at 0% 100%,color-mix(in srgb,var(--primary) 13%,transparent),transparent 65%),var(--card);border-color:color-mix(in srgb,var(--primary) 28%,var(--line));}
.plan-start-hero::before{content:'';position:absolute;top:0;inset-inline:26px;height:2px;background:linear-gradient(90deg,transparent,var(--primary),transparent);opacity:.6;}
.plan-start-hero .plan-start-greeting:first-child{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:24px;}
.plan-start-greeting h1{font-size:clamp(23px,2.3vw,30px);line-height:1.65;margin:3px 0 6px;font-weight:650;letter-spacing:-.6px;}
.plan-start-greeting small{display:block!important;font-size:11px;color:var(--primary);}
.plan-start-greeting p{font-size:13px;color:var(--ink2);margin:0;}
.plan-day-ring{width:85px;height:85px;position:relative;flex:none;}
.plan-day-ring svg{width:100%;height:100%;transform:rotate(-90deg);fill:none;stroke-width:4;}
.ring-track{stroke:var(--s2);}.ring-value{stroke:var(--primary);stroke-linecap:round;}
.plan-day-ring>span{position:absolute;inset:0;display:grid;place-items:center;font-size:19px;font-weight:600;}
.plan-start-hero .plan-review-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:20px;max-width:640px;}
.plan-review-buttons button{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:48px;padding:9px 12px;border:1px solid var(--line2);border-radius:11px;background:color-mix(in srgb,var(--card) 65%,transparent);font:inherit;color:var(--ink);font-size:13px;}
.plan-review-buttons button>i{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent);font-style:normal;}
.plan-review-buttons button.reviewed{border-color:color-mix(in srgb,var(--green) 45%,var(--line));}.plan-review-buttons button.reviewed>i{color:var(--green);background:color-mix(in srgb,var(--green) 12%,transparent);}
.plan-review-buttons button>svg:last-child{margin-inline-start:auto;width:13px;color:var(--green);}
.plan-metrics-compact{gap:10px;margin:0 0 16px;}
.plan-metrics-compact button{display:flex;flex-direction:row;align-items:center;gap:12px;padding:13px 16px;background:var(--card);min-height:72px;}
.plan-metrics-compact button>i{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:12px;color:var(--primary);background:color-mix(in srgb,var(--primary) 13%,transparent);}
.plan-metrics-compact button:nth-child(2)>i{color:var(--green);background:color-mix(in srgb,var(--green) 13%,transparent);}
.plan-metrics-compact button:nth-child(3)>i{color:#b3a2d1;background:color-mix(in srgb,#b3a2d1 13%,transparent);}
.plan-metrics-compact button>span{display:flex;flex-direction:column;gap:5px;min-width:0;}.plan-metrics-compact small{font-size:11px;color:var(--ink2);white-space:nowrap;}.plan-metrics-compact b{font-size:18px;color:var(--ink);margin:0;line-height:1.2;}
.plan-calendar-head{display:flex;justify-content:center;}.plan-day-nav{display:flex;align-items:center;justify-content:center;gap:6px;margin:0 0 10px;}.plan-day-title{background:none;border:0;color:var(--ink2);font:inherit;font-size:12px;padding:8px;min-height:36px;}.plan-day-nav .icon-btn{width:32px;height:32px;}
.plan-week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;margin:0 0 20px;}
.plan-week-strip>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:80px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:var(--card);font:inherit;padding:11px 8px;}
.plan-week-strip small{font-size:11px;color:var(--ink2);}.plan-week-strip b{font-size:20px;font-weight:550;line-height:1;}.plan-week-strip>button>i{display:block;width:65%;height:3px;border-radius:4px;background:var(--s2);overflow:hidden;}.plan-week-strip i>i{display:block;height:100%;border-radius:4px;background:var(--primary);}
.plan-week-strip>button.selected{background:var(--primary);color:var(--bg);border-color:var(--primary);box-shadow:0 5px 14px color-mix(in srgb,var(--primary) 13%,transparent);}.plan-week-strip>button.selected small{color:var(--bg);}.plan-week-strip>button.selected>i{background:color-mix(in srgb,var(--bg) 18%,transparent);}.plan-week-strip>button.selected i>i{background:var(--bg);}.plan-week-strip>button.is-today:not(.selected){border-color:var(--primary);}
.plan-home-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;align-items:start;}.plan-home-work,.plan-home-side{min-width:0;}.plan-home-grid .plan-section{margin-bottom:16px;padding:19px;}.plan-home-grid .plan-section h2{font-size:15px;}.plan-home-grid h2>.ic{width:17px;vertical-align:middle;color:var(--primary);margin-inline-end:5px;}
.plan-day-intention{display:block;color:var(--muted);font-size:11px;margin-top:6px;}.plan-day-list{max-height:420px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;}
.plan-start .plan-task{padding:12px 0;gap:9px;min-height:64px;border-bottom-color:var(--line);}.plan-start .plan-item-main b{font-size:14px;line-height:1.8;}.plan-start .plan-item-main small{font-size:11px;line-height:1.7;}.plan-start .plan-task .check{width:22px!important;height:22px!important;flex:none;}.plan-start .plan-grip{font-size:17px;opacity:.35;}.plan-start .plan-links{display:none;}.plan-start .plan-menu-btn{width:28px;opacity:.55;}.plan-start .icon-btn{min-width:32px;}
.plan-project-day-group+.plan-project-day-group{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);}.plan-project-day-title{display:flex;justify-content:space-between;align-items:center;gap:10px;background:none;border:0;font:inherit;color:var(--ink);width:100%;text-align:start;padding:0 0 8px;font-size:13px;}.plan-project-day-title small{font-size:11px;color:var(--ink2);}.plan-project-day-group>.plan-progress{height:3px;margin:0 0 3px;}.plan-project-day .plan-day-list{max-height:320px;}
.plan-home-goal{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;background:color-mix(in srgb,var(--green) 5%,var(--card));border:1px solid var(--line);border-radius:10px;padding:12px;width:100%;color:var(--ink);text-align:start;margin-bottom:8px;font:inherit;}.plan-home-goal:last-child{margin-bottom:0;}.plan-home-goal b{font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.plan-home-goal>span{font-size:11px;color:var(--green);}.plan-home-goal>.plan-progress{grid-column:1 / -1;margin:0;height:4px;background:var(--s2);}.plan-home-goal>.plan-progress>i{background:var(--green);}
.plan-week-chart{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;height:120px;}.plan-week-chart>button{display:flex;flex-direction:column;gap:7px;align-items:center;min-width:0;border:0;background:none;font:inherit;color:var(--muted);padding:0;}.plan-week-chart small,.plan-week-chart span{font-size:10px;}.plan-week-chart>button>i{display:flex;align-items:flex-end;width:100%;height:72px;border-radius:5px;background:var(--s2);overflow:hidden;}.plan-week-chart i>i{display:block;width:100%;background:var(--primary);border-radius:5px;min-height:2px;}.plan-home-more summary{cursor:pointer;font-size:12px;color:var(--ink2);}.plan-home-more .plan-fin-summary{grid-template-columns:1fr;}.plan-home-more .plan-fin-summary>button{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);}.plan-home-more .plan-fin-summary b{font-size:12px;}.plan-home-more .plan-fin-summary span{font-size:11px;}
.plan-live-compact{display:flex;gap:10px;align-items:center;padding:10px 14px;margin-bottom:16px;}.plan-live-compact .plan-timer-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;}.plan-live-compact strong{font-size:17px;}.plan-live-compact .btn{min-height:34px;padding:6px;}
.plan-kind-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:12px 0 18px;}.plan-kind-picker label{position:relative;}.plan-kind-picker input{position:absolute;opacity:0;}.plan-kind-picker span{display:block;text-align:center;border:1px solid var(--line);background:var(--s2);padding:10px 4px;border-radius:9px;font-size:12px;}.plan-kind-picker input:checked+span{background:color-mix(in srgb,var(--primary) 15%,var(--card));border-color:var(--primary);color:var(--primary);}.plan-kind-picker input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px;}.plan-kind-picker input:disabled+span{opacity:.4;}
.plan-activity-sheet .field .field{margin:0;}.plan-activity-sheet [hidden]{display:none!important;}.plan-activity-options{margin-top:10px;}.plan-activity-options summary{font-size:12px;color:var(--ink2);cursor:pointer;margin-bottom:14px;}.plan-option-check{display:flex;align-items:center;gap:8px;direction:ltr;justify-content:flex-end;font-size:12px;margin:12px 0;}.plan-activity-options p{font-size:11px;line-height:1.9;}.form-error{font-size:12px;color:var(--red);}
.plan-routine-entry details{padding:0 32px 12px;}.plan-routine-entry summary{font-size:11px;color:var(--muted);cursor:pointer;}.plan-routine-step{display:flex;gap:9px;align-items:center;font-size:12px;padding:10px 0;}
.plan-fin-center-button{min-height:42px!important;padding:8px 13px!important;border-color:color-mix(in srgb,var(--primary) 45%,var(--line))!important;background:color-mix(in srgb,var(--primary) 13%,var(--card))!important;color:var(--ink)!important;font-size:13px!important;}.plan-fin-center-button .ic{width:21px;height:21px;color:var(--primary);}
.plan-fin-center-hero{display:flex;align-items:center;gap:18px;padding:25px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--line));border-radius:17px;margin-bottom:18px;background:radial-gradient(ellipse at 100% 10%,color-mix(in srgb,var(--primary) 16%,transparent),transparent 75%),var(--card);}.plan-fin-center-hero>span{display:grid;place-items:center;width:62px;height:62px;border-radius:18px;background:color-mix(in srgb,var(--primary) 13%,var(--card));color:var(--primary);}.plan-fin-center-hero .ic{width:28px;height:28px;}.plan-fin-center-hero small{display:block;font-size:12px;color:var(--ink2);}.plan-fin-center-hero b{display:block;font-size:24px;font-weight:550;margin:8px 0;overflow-wrap:anywhere;}.plan-fin-center-hero p{font-size:11px;color:var(--muted);margin:0;}
.plan-fin-modules{margin-bottom:18px;}.plan-fin-module{display:flex;align-items:center;gap:12px;padding:18px 16px;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:13px;font:inherit;text-align:start;min-width:0;}.plan-fin-module>i{display:grid;place-items:center;width:42px;height:42px;flex:none;background:color-mix(in srgb,var(--module-accent) 13%,transparent);color:var(--module-accent);border-radius:12px;}.plan-fin-module>span{flex:1;min-width:0;}.plan-fin-module b{font-size:14px;display:block;}.plan-fin-module small{display:block;font-size:10px;line-height:1.9;color:var(--ink2);margin-top:4px;}.plan-fin-module>.ic{width:14px;color:var(--muted);flex:none;}
.plan-fin-desk-single{display:block;}.plan-fin-desk-single .cat-list{grid-template-columns:repeat(3,minmax(0,1fr));}.plan-desk-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:16px 0 12px;}.plan-desk-heading b{font-size:13px;}.plan-desk-heading .btn{font-size:11px;}
.plan-document-actions{display:flex;gap:6px;flex-wrap:wrap;}.plan-document-actions .btn{font-size:11px!important;min-height:34px!important;padding:6px 9px!important;}.plan-document-actions .ic{width:16px;height:16px;}
.plan-goal-photo{display:block;width:100%;height:150px;object-fit:cover;border-radius:11px;margin:0 0 14px;background:var(--s2);}.plan-goal-visual{margin-bottom:18px;}.plan-goal-visual .plan-goal-photo{height:220px;}.is-list .plan-goal .plan-goal-photo{float:inline-start;width:55px;height:55px;margin:0 0 0 12px;border-radius:9px;}.is-list .plan-goal .plan-card-top{flex-wrap:wrap;}.plan-goal-image-sheet input[type=range]{width:100%;accent-color:var(--primary);}.plan-goal-image-sheet .attach-preview{max-height:160px;}
.view-settings .card h2,.view-settings .plan-section h2{font-size:15px!important;}.view-settings .field label{font-size:12px!important;}.view-settings .settings-grid{gap:14px;}.view-settings input,.view-settings select,.view-settings textarea{font-size:13px!important;}.modal h2{font-size:18px;}
@media(max-width:1100px){.plan-home-grid{grid-template-columns:minmax(0,1fr) 240px;}.plan-home-grid .plan-section{padding:16px;}.plan-fin-desk-single .cat-list{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:900px){.plan-home-grid{grid-template-columns:1fr;}.plan-home-side{display:grid;grid-template-columns:1fr 1fr;gap:0 14px;}.plan-home-side>.plan-home-more{grid-column:1 / -1;}}
@media(max-width:760px){
 .plan-start{padding-top:5px;}.plan-start-hero.plan-daily-reviews{padding:18px 16px 16px;margin-bottom:10px;}.plan-start-greeting{gap:8px;}.plan-start-greeting h1{font-size:23px;}.plan-start-greeting small{font-size:10px;}.plan-start-greeting p{font-size:12px;}.plan-day-ring{width:68px;height:68px;}.plan-day-ring>span{font-size:16px;}.plan-start-hero .plan-review-buttons{gap:6px;margin-top:16px;}.plan-review-buttons button{justify-content:center;gap:6px;font-size:12px;min-height:46px;padding:8px 4px;}.plan-review-buttons button>i{width:24px;height:24px;border-radius:7px;}.plan-review-buttons button>i .ic{width:16px;height:16px;}.plan-review-buttons button>svg:last-child{display:none;}
 .plan-metrics-compact{gap:7px;margin-bottom:10px;}.plan-metrics-compact button{padding:10px 8px;gap:7px;min-height:66px;}.plan-metrics-compact button>i{width:26px;height:30px;border-radius:8px;}.plan-metrics-compact .ic{width:15px;height:15px;}.plan-metrics-compact small{font-size:9px;}.plan-metrics-compact b{font-size:15px;}
 .plan-calendar-head{justify-content:center;}.plan-day-nav{margin:0 0 8px;}.plan-day-title{font-size:11px;min-height:32px;padding:5px;}.plan-week-strip{gap:5px;margin-bottom:14px;}.plan-week-strip>button{min-height:66px;border-radius:10px;gap:8px;padding:9px 2px;}.plan-week-strip small{font-size:9px;white-space:nowrap;}.plan-week-strip b{font-size:18px;}.plan-week-strip>button>i{width:70%;height:3px;}
 .plan-home-grid{gap:0;}.plan-home-grid .plan-section{padding:15px;margin-bottom:12px;}.plan-home-grid .plan-section h2{font-size:15px;}.plan-home-grid .plan-section-head .btn{font-size:11px;min-height:32px;}.plan-home-side{display:block;}.plan-home-week{display:none;}.plan-home-goals .plan-home-goal{padding:10px 12px;}.plan-day-list{max-height:360px;}.plan-start .plan-grip{display:none;}.plan-start .plan-task{gap:8px;min-height:64px;}.plan-start .plan-item-main b{font-size:14px;}.plan-start .plan-item-main small{font-size:11px;}.plan-start .plan-menu-btn{width:25px;}.plan-start .plan-task>.icon-btn{min-width:30px;}.plan-day-intention{font-size:10px;}
 .plan-fin-center-hero{padding:19px 16px;gap:12px;}.plan-fin-center-hero>span{width:50px;height:50px;border-radius:14px;flex:none;}.plan-fin-center-hero b{font-size:20px;}.plan-fin-module{gap:9px;padding:14px 10px;}.plan-fin-module>i{width:32px;height:36px;border-radius:10px;}.plan-fin-module>i .ic{width:18px;}.plan-fin-module b{font-size:12px;}.plan-fin-module small{font-size:9px;}.plan-fin-module>.ic{display:none;}.plan-document-actions .btn{font-size:10px!important;padding:6px!important;}.plan-goal-photo{height:160px;}.plan-goal-visual .plan-goal-photo{height:180px;}
}
@media(max-width:370px){.plan-metrics-compact button>i{display:none;}.plan-review-buttons button>i{display:none;}.plan-week-strip small{font-size:8px;}}
.plan-start-greeting>div:first-child{flex:1;min-width:0;text-align:right;}
.plan-start-hero .plan-start-greeting{gap:20px;}
.plan-start-greeting h1{font-size:24px;}
.plan-day-progress{display:flex;flex-direction:column;align-items:center;flex:none;gap:8px;}
.plan-day-ring{width:112px;height:112px;}
.plan-day-ring>span{font-size:23px;}
.plan-day-progress p{font-size:11px;text-align:center;margin:0;}
.plan-start>.plan-week-strip{margin-bottom:16px;}
@media(max-width:760px){.plan-start-hero .plan-start-greeting{gap:12px;}.plan-start-greeting h1{font-size:20px;}.plan-day-ring{width:86px;height:86px;}.plan-day-ring>span{font-size:19px;}.plan-day-progress{max-width:120px;gap:6px;}.plan-day-progress p{font-size:9px;line-height:1.7;}.plan-start-hero.plan-daily-reviews{padding:16px;}.plan-start-hero .plan-review-buttons{margin-top:14px;}.plan-start>.plan-week-strip{margin-bottom:12px;}}
@media(min-width:761px){.main{padding-top:12px!important;}.plan-topbar{padding-top:20px!important;}}
@media(max-width:760px){.m-bar{padding-top:calc(var(--plan-safe-top) + 22px)!important;padding-bottom:10px!important;}.plan-start{padding-top:8px;}}
.plan-hero-date{background:none;border:0;font:inherit;color:inherit;padding:0;text-align:start;cursor:pointer;}
.main:has(.plan-start) .m-bar-title small,.main:has(.plan-start) .plan-topbar>span:first-of-type{display:none!important;}
.plan-weekly-goal{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);}.plan-weekly-goal:last-child{border-bottom:0;}.plan-weekly-goal .check{width:22px!important;height:22px!important;flex:none;}.plan-weekly-goal .plan-item-main b{font-size:13px;}.plan-weekly-goal>.plan-item-main>.plan-progress{display:block;width:100%;height:3px;margin:9px 0 0;background:var(--s2);}.plan-weekly-goal>span{font-size:11px;color:var(--primary);}.plan-weekly-goals .muted{font-size:12px;}.plan-home-goal>.plan-progress{display:block;width:100%;}
@media(max-width:760px){.main:has(.plan-money-home-head) .m-bar-title b{display:none;}.plan-money-home-head{margin:8px 0 18px;}.plan-day-progress p{font-size:10px;}}
/* Three distinct palettes, including readable financial chips. */
:root[data-skin=forest]{--bg:#101f1c;--bg2:#162c25;--card:#1b3029;--ink:#edf6ec;--ink2:#ceddce;--muted:#9db2a5;--primary:#91d2aa;--primary2:#72b78b;--line:#344b3e;--line2:#4f695b;--s2:#263f33;--side:#13251f;--green:#91d2aa;--red:#f1a499;}
:root[data-skin=rose]{--bg:#fbf3f5;--bg2:#f5e8ed;--card:#fffafb;--ink:#36232d;--ink2:#614452;--muted:#876575;--primary:#a33f63;--primary2:#903451;--line:#e6ccd6;--line2:#ceacbd;--s2:#f4e2ea;--side:#f6e9ee;--green:#397458;--red:#b33e4e;}
:root[data-skin=indigo]{--bg:#19162c;--bg2:#211d39;--card:#292440;--ink:#f0edfc;--ink2:#d7cee9;--muted:#aca1c3;--primary:#b6aaff;--primary2:#9f8ff2;--line:#443b61;--line2:#64577e;--s2:#352d4e;--side:#1e1931;--green:#92cdb2;--red:#f2a2b8;}
:root:is([data-skin=forest],[data-skin=rose],[data-skin=indigo]) .sidebar{background:var(--side)!important;}
:root[data-skin=rose] .plan-account{background:#f5e6ec;color:var(--ink);border-color:var(--line2);}
:root[data-skin=rose] .plan-account :is(b,strong,small){color:var(--ink2);}
:root[data-skin=rose] .plan-week-strip>button.selected{color:#fff;}
:root[data-skin=rose] .plan-week-strip>button.selected small{color:#fff;}
.plan-form-help{display:flex;align-items:center;width:max-content;max-width:100%;margin:0 0 12px;margin-inline-start:auto;gap:6px;font-size:12px;}
.plan-auto-image{font-size:12px;margin:14px 0;gap:8px;}
.plan-image-generate,.plan-image-settings{display:flex;flex-direction:column;gap:10px;margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:12px;}
.plan-image-settings small{font-size:11px;line-height:1.8;}
.plan-image-pending{display:flex;justify-content:center;align-items:center;gap:10px;height:150px;font-size:12px;background:var(--s2);border-radius:12px;margin-bottom:12px;}
.plan-goal-photo{aspect-ratio:16/9;object-fit:cover;}
.plan-assist-result{margin-top:16px;}.plan-assist-result>p{font-size:13px;line-height:1.9;}
.plan-assist-field{display:flex;flex-direction:column;gap:6px;padding:10px 0;border-top:1px solid var(--line);font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;}.plan-assist-field b{color:var(--muted);font-weight:400;}.plan-assist-result>.btn{margin-top:12px;}
.m-bar-side [aria-label="دستیار هوش مصنوعی"]{width:34px;min-width:34px;height:34px;padding:7px;}
.plan-activity-overview{padding:22px;margin-bottom:16px;}.plan-activity-heading h1{font-size:22px;margin:8px 0 12px;}.plan-activity-facts{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:11px;color:var(--ink2);}.plan-activity-facts b{font-size:15px;color:var(--ink);margin-inline-end:4px;}
@media(max-width:700px){.plan-activity-overview{padding:18px;}.plan-activity-heading h1{font-size:19px;}.plan-activity-facts{flex-direction:column;gap:6px;font-size:10px;}.plan-activity-facts b{font-size:13px;}.plan-form-help{font-size:11px;}}
.main:has(.plan-activity-overview) .m-bar-title small,.main:has(.plan-activity-overview) .plan-topbar>span:first-of-type{display:none!important;}
.plan-activity-overview.plan-daily-reviews{display:block;position:relative;background:linear-gradient(125deg,color-mix(in srgb,var(--primary) 9%,var(--card)),var(--card) 70%);border:1px solid var(--line);border-radius:16px;}
/* Shared overview cards: daily plan, goals, projects and accounting. */
.plan-section-overview.plan-daily-reviews{display:block;position:relative;padding:22px;margin:6px 0 20px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(125deg,color-mix(in srgb,var(--primary) 9%,var(--card)),var(--card) 70%);}
.plan-overview-heading h1{font-size:24px;margin:0 0 12px;}.plan-overview-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}.plan-overview-actions .btn{min-height:34px;padding:7px 12px;font-size:12px;}
.plan-overview-controls{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);}.plan-overview-controls .plan-toolbar{margin:0;gap:10px;justify-content:space-between;flex-wrap:wrap;}.plan-overview-controls .tabs{display:flex;gap:4px;flex-wrap:wrap;}.plan-overview-controls .tabs .btn{padding:7px 10px;font-size:11px;min-height:32px;}.plan-view-tools{display:flex;gap:4px;}.plan-view-tools .btn{padding:7px;min-width:33px;min-height:32px;}.plan-view-tools .ic{width:17px;height:17px;}
.plan-money-orbit{position:relative;width:112px;height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:4px solid color-mix(in srgb,var(--primary) 24%,var(--s2));border-block-start-color:var(--primary);border-inline-start-color:var(--primary);border-radius:50%;background:color-mix(in srgb,var(--primary) 6%,transparent);color:var(--primary);}.plan-money-orbit .ic{width:28px;height:28px;}.plan-money-orbit b{font-size:20px;line-height:1;}
.plan-financial-overview .plan-activity-facts{flex-direction:column;gap:7px;}.plan-financial-overview .plan-activity-facts b{font-size:14px;}.plan-money-month{margin-bottom:14px;}.plan-money-month .plan-fin-summary{margin:0;}.plan-money-month .plan-fin-summary button{padding:12px 8px;}.plan-cash-accounts .plan-section-head strong{display:block;font-size:15px;color:var(--ink2);margin-top:7px;font-weight:500;}
.main:has(.plan-financial-overview) .m-bar-title b{display:none;}
@media(max-width:760px){.plan-section-overview.plan-daily-reviews{padding:18px 16px;margin:8px 0 16px;}.plan-overview-heading h1{font-size:20px;margin-bottom:10px;}.plan-overview-actions{gap:6px;margin-top:12px;}.plan-overview-actions .btn{padding:6px 8px;font-size:11px;}.plan-overview-controls{margin-top:14px;padding-top:12px;}.plan-overview-controls .plan-toolbar{gap:8px;}.plan-overview-controls .tabs .btn{padding:6px 8px;font-size:10px;}.plan-money-orbit{width:86px;height:86px;border-width:3px;}.plan-money-orbit .ic{width:22px;height:22px;}.plan-money-orbit b{font-size:18px;}.plan-money-month .plan-fin-summary b{font-size:12px;}.plan-financial-overview .plan-activity-facts b{font-size:12px;}.plan-cash-accounts .plan-section-head strong{font-size:14px;}}
.main:has(.plan-start) .m-bar-title b,.main:has(.plan-activity-overview) .m-bar-title b,.main:has(.plan-goal-overview) .m-bar-title b,.main:has(.plan-project-overview) .m-bar-title b{display:none!important;}
/* Optional child checklists stay compact below each activity. */
.plan-subactivities{margin:0 32px 10px 0;border-inline-start:1px solid var(--line);padding-inline-start:14px;}
.plan-subactivities>summary,.plan-subtask-editor>summary{display:flex;align-items:center;gap:7px;cursor:pointer;font-size:11px;color:var(--ink2);list-style:none;padding:7px 0;}.plan-subactivities summary .ic,.plan-subtask-editor summary .ic{width:15px;height:15px;color:var(--primary);}.plan-subactivities summary small{margin-inline-start:auto;color:var(--muted);font-size:10px;}
.plan-subactivity-row{display:flex;align-items:flex-start;gap:9px;padding:9px 0;font-size:12px;cursor:pointer;}.plan-subactivity-row .check{width:19px!important;height:19px!important;flex:none;margin-top:3px;}.plan-subactivity-row>span{display:flex;flex-direction:column;gap:3px;min-width:0;}.plan-subactivity-row b{font-size:12px;font-weight:400;line-height:1.8;}.plan-subactivity-row small{font-size:10px;line-height:1.8;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;}.plan-subactivity-row:has(input:checked) b{color:var(--muted);text-decoration:line-through;}
.plan-subtask-editor{margin:14px 0;padding:8px 12px;border:1px solid var(--line);border-radius:11px;}.plan-subtask-editor summary small{margin-inline-start:auto;color:var(--muted);font-size:10px;}.plan-subdraft-row{padding:10px 0;border-bottom:1px solid var(--line);}.plan-subdraft-row>div{display:flex;align-items:center;gap:8px;}.plan-subdraft-row [data-sub-title]{min-width:0;flex:1;font-size:12px;padding:9px;}.plan-subdraft-row [data-sub-done]{width:17px;height:17px;accent-color:var(--primary);flex:none;}.plan-subdraft-row .icon-btn{width:28px;height:28px;min-width:28px;}.plan-subdraft-row details{margin-inline-start:26px;}.plan-subdraft-row details>summary{font-size:10px;color:var(--muted);padding:8px 0;cursor:pointer;}.plan-subdraft-row textarea{width:100%;font-size:12px;}.plan-subdraft-add{display:flex;align-items:center;gap:7px;margin-top:12px;}.plan-subdraft-add input{min-width:0;flex:1;font-size:12px;}.plan-subdraft-add button{flex:none;}
@media(max-width:760px){.plan-subactivities{margin-inline-start:27px;padding-inline-start:11px;}.plan-subactivity-row{padding:8px 0;}.plan-subtask-editor{padding:7px 10px;}}
.plan-goal-scopes{display:flex;gap:4px;max-width:340px;padding:4px;background:var(--s2);border:1px solid var(--line);border-radius:10px;margin:0 auto 16px;}.plan-goal-scopes .btn{flex:1;padding:7px 16px;min-height:32px;font-size:12px;}.plan-goal-week-nav{display:flex;justify-content:center;align-items:center;gap:8px;margin:0 0 16px;}.plan-goal-week-nav>span{font-size:11px;color:var(--ink2);}.plan-goal-week-nav .icon-btn{width:30px;height:30px;}
.plan-weekly-goal-checklist{padding:0 18px 14px;border-top:1px solid var(--line);margin-top:8px;}.plan-weekly-goal-checklist>label{display:flex;align-items:center;gap:9px;padding:10px 0;font-size:12px;line-height:1.8;}.plan-weekly-goal-checklist .check{width:19px!important;height:19px!important;flex:none;}.plan-weekly-goal-checklist label:has(input:checked) span{text-decoration:line-through;color:var(--muted);}.plan-weekly-step-add{display:flex;gap:8px;align-items:center;margin-top:8px;}.plan-weekly-step-add input{flex:1;min-width:0;font-size:12px;}.plan-weekly-step-add button{flex:none;}.is-list .plan-weekly-goal-checklist{clear:both;}

/* Accounting workspace: scoped beneath the existing shared overview. */
.plan-fin-workspace-overview .plan-activity-facts{gap:9px!important;}
.plan-fin-workspace-overview .plan-activity-facts b{font-size:19px!important;line-height:1.45;overflow-wrap:anywhere;}
.plan-fin-flow{display:flex;justify-content:center;gap:clamp(24px,6vw,72px);margin:4px 0 22px;padding:2px 0 8px;}
.plan-fin-flow-circle{appearance:none;width:156px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;padding:10px;border:1px solid var(--line);background:var(--card);font:inherit;color:var(--ink);cursor:pointer;transition:transform .16s ease,background .16s ease;}
.plan-fin-flow-circle:hover{transform:translateY(-2px);}
.plan-fin-flow-circle>span{display:flex;align-items:center;flex-direction:column;gap:5px;max-width:100%;}
.plan-fin-flow-circle .ic{width:22px;height:22px;}
.plan-fin-flow-circle b{font-size:14px;line-height:1.4;}
.plan-fin-flow-circle strong{font-size:13px;line-height:1.7;overflow-wrap:anywhere;text-align:center;max-width:132px;}
.plan-fin-flow-circle small{display:flex;align-items:center;gap:4px;color:var(--ink2);font-size:10px;}
.plan-fin-flow-circle small .ic{width:13px;height:13px;}
.plan-fin-flow-circle.is-income{border-color:color-mix(in srgb,var(--green) 40%,var(--line));background:color-mix(in srgb,var(--green) 7%,var(--card));}
.plan-fin-flow-circle.is-expense{border-color:color-mix(in srgb,var(--red) 36%,var(--line));background:color-mix(in srgb,var(--red) 6%,var(--card));}
.plan-fin-flow-circle.is-income>span>.ic,.plan-fin-flow-circle.is-income strong{color:var(--green);}
.plan-fin-flow-circle.is-expense>span>.ic,.plan-fin-flow-circle.is-expense strong{color:var(--red);}
.plan-fin-workspace{display:flex;flex-direction:column;gap:12px;margin-bottom:22px;}
.plan-fin-widget{border:1px solid var(--line);background:var(--card);border-radius:15px;min-width:0;overflow:hidden;transition:border-color .15s,opacity .15s;}
.plan-fin-widget-header{display:flex;align-items:center;gap:4px;padding:9px 11px;min-height:70px;}
.plan-fin-widget-title{display:flex;align-items:center;gap:12px;flex:1;min-width:0;background:none;border:0;font:inherit;color:var(--ink);text-align:start;padding:6px 2px;cursor:pointer;}
.plan-fin-widget-title>i{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:12px;background:color-mix(in srgb,var(--primary) 10%,var(--card));color:var(--primary);}
.plan-fin-widget-title>i .ic{width:19px;height:19px;}
.plan-fin-widget-title>span{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0;}
.plan-fin-widget-title b{font-size:14px;font-weight:600;}
.plan-fin-widget-title small{font-size:11px;color:var(--ink2);}
.plan-fin-widget-title>.ic{width:15px;height:15px;color:var(--ink2);}
.plan-fin-widget.is-open .plan-fin-widget-title>.ic{transform:rotate(-90deg);}
.plan-fin-widget-grip{display:grid;place-items:center;align-self:stretch;min-width:25px;color:var(--ink2);background:none;border:0;padding:0;cursor:grab;touch-action:none;opacity:.65;font-size:22px;}
.plan-fin-widget-grip:active{cursor:grabbing;}
.plan-fin-widget-grip .ic{width:16px;height:20px;}
.plan-fin-widget-options{width:30px;height:34px;min-width:30px;}
.plan-fin-widget.is-moving{opacity:.45;}
.plan-fin-widget.is-drop-target{border-color:var(--primary);box-shadow:0 -3px 0 color-mix(in srgb,var(--primary) 38%,transparent);}
.plan-fin-widget-body{border-top:1px solid var(--line);padding:15px 18px 12px;min-width:0;}
.plan-fin-panel-total{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:12px;color:var(--ink2);}
.plan-fin-panel-total b{font-size:16px;color:var(--ink);font-weight:600;overflow-wrap:anywhere;}
.plan-fin-inline-list{max-height:390px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;}
.plan-fin-inline-row{display:flex;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--line);min-width:0;}
.plan-fin-inline-row:last-child{border-bottom:0;}
.plan-fin-inline-row .plan-item-main{display:flex;flex-direction:column;flex:1;gap:4px;min-width:0;}
.plan-fin-inline-row .plan-item-main b{font-size:12px;overflow-wrap:anywhere;}
.plan-fin-inline-row .plan-item-main small{font-size:10px;color:var(--ink2);}
.plan-fin-inline-row>strong{font-size:12px;font-weight:550;max-width:40%;text-align:end;overflow-wrap:anywhere;}
.plan-fin-inline-row>.btn{font-size:10px;padding:5px 6px;min-height:30px;white-space:nowrap;}
.plan-fin-panel-actions{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap;}
.plan-fin-panel-actions>.btn{font-size:11px;min-height:34px;}
.plan-fin-panel-footer{display:flex;justify-content:flex-end;border-top:1px solid var(--line);margin-top:10px;padding-top:8px;}
.plan-fin-panel-footer>.btn{font-size:11px;min-height:30px;padding:5px;}
.plan-fin-empty{margin:8px 0;line-height:1.8;font-size:12px;}
.plan-fin-person{display:flex;align-items:center;gap:9px;width:100%;padding:11px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink);font:inherit;text-align:start;}
.plan-fin-person>.plan-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;}
.plan-fin-person .plan-item-main b{font-size:12px;overflow-wrap:anywhere;}
.plan-fin-person .plan-item-main small{font-size:10px;color:var(--ink2);}
.plan-fin-person>span:last-of-type{display:flex;flex-direction:column;text-align:end;gap:4px;max-width:46%;}
.plan-fin-person>span:last-of-type small{font-size:11px;overflow-wrap:anywhere;}
.plan-fin-person>.ic{width:13px;min-width:13px;color:var(--ink2);}
.plan-fin-report-summary{display:flex;gap:14px;justify-content:space-between;margin:4px 0 18px;}
.plan-fin-report-summary>span{font-size:11px;color:var(--ink2);display:flex;flex-direction:column;gap:6px;}
.plan-fin-report-summary b{font-size:14px;overflow-wrap:anywhere;}
.plan-fin-mini-chart{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;direction:rtl;height:134px;}
.plan-fin-mini-chart>div{display:flex;flex-direction:column;gap:8px;text-align:center;min-width:0;}
.plan-fin-mini-chart>div>span{display:flex;justify-content:center;align-items:end;gap:4px;height:108px;}
.plan-fin-mini-chart i{display:block;width:15px;max-width:35%;min-height:2px;border-radius:4px 4px 1px 1px;}
.plan-fin-mini-chart .in{background:var(--green);}.plan-fin-mini-chart .out{background:var(--red);opacity:.7;}
.plan-fin-mini-chart small{font-size:10px;color:var(--ink2);}
.plan-fin-mini-legend{display:flex;justify-content:center;gap:18px;font-size:10px;margin:9px 0 4px;}
.plan-fin-value-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px;}.plan-fin-value-row:last-child{border-bottom:0;}.plan-fin-value-row b{font-size:14px;text-align:end;overflow-wrap:anywhere;}
.plan-fin-budget{display:grid;grid-template-columns:1fr auto;gap:9px;width:100%;padding:12px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink);font:inherit;text-align:start;}
.plan-fin-budget>span{display:flex;flex-direction:column;gap:5px;min-width:0;}.plan-fin-budget b{font-size:12px;}.plan-fin-budget small{font-size:10px;color:var(--ink2);overflow-wrap:anywhere;}.plan-fin-budget em{font-size:11px;font-style:normal;}.plan-fin-budget>.plan-progress{grid-column:1/-1;height:4px;}
.plan-fin-workspace-empty{text-align:center;padding:26px;border:1px dashed var(--line);border-radius:14px;}
.plan-fin-custom-list>div{display:flex;align-items:center;gap:6px;padding:8px 0;border-bottom:1px solid var(--line);}.plan-fin-custom-list>div:last-child{border:0;}
.plan-fin-custom-choice{display:flex;align-items:center;gap:10px;flex:1;text-align:start;color:var(--ink);font:inherit;border:0;background:none;padding:4px;min-width:0;}
.plan-fin-custom-choice>.check{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border:1px solid var(--line);border-radius:7px;background:var(--card);font-style:normal;}
.plan-fin-custom-choice>.check.checked{background:var(--primary);border-color:var(--primary);color:var(--primary-ink,#fff);}.plan-fin-custom-choice>.check .ic{width:15px;height:15px;}
.plan-fin-custom-choice>span{display:flex;align-items:center;gap:7px;font-size:12px;min-width:0;}.plan-fin-custom-choice>span .ic{width:16px;height:16px;color:var(--ink2);}
.plan-fin-custom-list .btn{min-width:32px;min-height:32px;padding:5px;}.plan-fin-custom-list .btn .ic{width:15px;height:15px;}
.plan-fin-custom-footer{display:flex;justify-content:space-between;gap:8px;margin-top:18px;}
.plan-fin-widget-body .cat-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;}.plan-fin-widget-body .cat-list button{min-width:0;}.plan-fin-widget-body .cat-list span{overflow-wrap:anywhere;}
@media(max-width:760px){
 .plan-fin-workspace-overview .plan-activity-facts b{font-size:16px!important;}
 .plan-fin-flow{gap:28px;margin-bottom:16px;}.plan-fin-flow-circle{width:138px;padding:10px;}.plan-fin-flow-circle b{font-size:13px;}.plan-fin-flow-circle strong{font-size:11px;max-width:118px;}.plan-fin-flow-circle>span{gap:4px;}
 .plan-fin-workspace{gap:10px;}.plan-fin-widget-header{padding:8px;min-height:65px;gap:3px;}.plan-fin-widget-title{gap:8px;}.plan-fin-widget-title>i{width:31px;height:31px;flex-basis:31px;border-radius:10px;}.plan-fin-widget-title b{font-size:12px;}.plan-fin-widget-title small{font-size:10px;line-height:1.6;}.plan-fin-widget-grip{min-width:20px;}.plan-fin-widget-options{width:27px;min-width:27px;}.plan-fin-widget-body{padding:12px;}.plan-fin-inline-list{max-height:320px;}
 .plan-fin-panel-total{align-items:flex-start;font-size:11px;}.plan-fin-panel-total b{font-size:14px;}.plan-fin-inline-row{gap:5px;}.plan-fin-inline-row>strong{font-size:11px;}.plan-fin-inline-row .plan-item-main b{font-size:11px;}.plan-fin-inline-row>.btn{font-size:9px;padding:4px;}.plan-fin-widget-body .cat-list{grid-template-columns:1fr;}.plan-fin-report-summary b,.plan-fin-value-row b{font-size:12px;}
}
@media(max-width:360px){.plan-fin-flow{gap:18px;}.plan-fin-flow-circle{width:126px;}.plan-fin-flow-circle strong{font-size:10px;max-width:108px;}.plan-fin-widget-title small{display:none;}}

.plan-week-checklist{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px;margin-top:14px}.plan-week-checklist-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.plan-week-checklist-head h2{font-size:1.12rem;margin:0}.plan-week-checklist-head span{font-size:.82rem}.plan-week-checklist-rows{margin-top:12px}.plan-week-checklist-row{display:flex;align-items:center;gap:12px;padding:13px 4px;border-bottom:1px solid var(--line)}.plan-week-checklist-row:last-child{border:0}.plan-week-item-title{text-align:right;background:none;border:0;color:var(--ink);font:inherit;line-height:1.6;overflow-wrap:anywhere;min-width:0}.plan-week-checklist-row.is-done .plan-week-item-title{text-decoration:line-through;color:var(--muted)}.plan-week-checklist-empty{text-align:center;padding:24px 0;font-size:.9rem}@media(max-width:600px){.plan-week-checklist{padding:16px;border-radius:16px}.plan-week-checklist-head span{font-size:.75rem}.plan-week-checklist-row{gap:9px}}

/* A shared panel grammar and readable type scale across the workspace. */
:root{--plan-type-caption:12px;--plan-type-body:14px;--plan-type-title:16px;--plan-type-heading:24px}
body{font-size:var(--plan-type-body);line-height:1.75}
.view .page-head h1,.view-settings h1,.settings h1{font-size:24px!important;line-height:1.6!important}
.view-settings h2,.set-detail h2,.settings h2,.modal h2{font-size:18px!important;line-height:1.6!important}
.plan-start-greeting h1,.plan-section-overview h1{font-size:26px!important;line-height:1.65!important}
.plan-section h2,.plan-section-head h2,.plan-home-grid .plan-section h2,.plan-fin-widget-title b{font-size:15px!important;line-height:1.7}
.plan-item-main b,.plan-fin-person .plan-item-main b,.plan-fin-inline-row .plan-item-main b{font-size:14px!important;line-height:1.75!important}
.plan-item-main small,.plan-meta,.plan-tag,.plan-links button,.plan-project-main small,.plan-project-main p,.plan-card-bottom,.plan-next,.plan-topbar>span:first-child,.plan-section-head .btn.text,.plan-fin-widget-title small,.plan-fin-panel-footer>.btn,.plan-fin-person .plan-item-main small,.plan-fin-report-summary>span,.plan-fin-budget small,.plan-fin-budget em,.plan-fin-person>span:last-of-type small{font-size:12px!important;line-height:1.75!important}
.plan-project-main h2{font-size:17px!important;line-height:1.7}
.plan-quick input,.plan-weekly-add input,.plan-subdraft-row input,.plan-subdraft-row textarea,.field label,.ios-row,.set-detail input,.set-detail select,.set-detail textarea{font-size:14px!important;line-height:1.75}
.btn,.plan-sidebar .nav button,.plan-settings-link,.plan-calendar-day span,.plan-review-buttons span{font-size:13px!important}
.plan-fin-flow-circle strong{font-size:13px!important;line-height:1.65;max-width:100%}
.plan-page-widget{margin-bottom:14px;}.plan-page-widget-body>.plan-panel-original{border:0!important;background:transparent!important;margin:0!important;padding:0!important;box-shadow:none!important}.plan-page-widget-body>.plan-goal-grid,.plan-page-widget-body>.plan-project-grid{padding:0!important}.plan-page-widget-body>.plan-panel-original>summary,.plan-panel-duplicate-heading{display:none!important}.plan-page-widget-body[hidden],.plan-page-widget[hidden]{display:none!important}.plan-page-widget-body{overflow:visible}.plan-page-layout-bar{display:flex;justify-content:flex-end;margin-bottom:10px}.plan-page-layout{white-space:nowrap}.plan-page-customize .plan-fin-custom-choice>span{font-size:14px!important}.plan-page-panel-group{min-width:0}.plan-home-grid .plan-page-widget{padding:0}.plan-home-more{display:block!important}.plan-page-widget-body .plan-section-head:has(>.plan-panel-duplicate-heading):not(:has(button)){display:none}.plan-page-widget-body .plan-week-checklist-head{display:none}.plan-week-item-title{font-size:14px!important;color:var(--ink)}
@media(max-width:600px){.plan-start-greeting h1,.plan-section-overview h1{font-size:22px!important}.view .page-head h1,.view-settings h1{font-size:21px!important}.plan-fin-widget-title b{font-size:14px!important}.plan-page-widget-body{padding:14px}.plan-home-grid .plan-page-widget .plan-section{padding:0!important;margin:0!important}.plan-page-widget .plan-home-week{display:block!important}.plan-fin-inline-row>strong{font-size:12px!important}.plan-fin-inline-row>.btn{font-size:12px!important}.plan-fin-report-summary b,.plan-fin-value-row b{font-size:14px!important}.plan-week-checklist-head span{font-size:12px!important}.plan-page-panel-grip{min-width:28px}.plan-page-layout{font-size:12px!important}.plan-quick input,.plan-weekly-add input,.plan-subdraft-row input,.plan-subdraft-row textarea,.set-detail input,.set-detail select,.set-detail textarea{font-size:16px!important}.plan-page-widget .plan-fin-widget-options{width:32px;min-width:32px}.plan-links button{max-width:135px}.plan-project-grid.is-list .plan-project-main h2{font-size:15px!important}}

.plan-fiscal-setting-button{display:flex;align-items:center;gap:12px;width:100%;text-align:start;padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--card);color:var(--ink);font:inherit;margin-top:12px}.plan-fiscal-setting-button>i{display:grid;place-items:center;color:var(--primary);width:34px;height:34px}.plan-fiscal-setting-button>span{display:flex;flex-direction:column;gap:3px;flex:1}.plan-fiscal-setting-button b{font-size:14px}.plan-fiscal-setting-button small{font-size:12px;color:var(--ink2)}.plan-fiscal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.plan-fiscal-head p{font-size:13px;line-height:1.8}.plan-fiscal-years{display:flex;flex-direction:column;gap:14px}.plan-fiscal-year{border:1px solid var(--line);border-radius:14px;padding:18px;background:var(--card)}.plan-fiscal-year-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.plan-fiscal-year h3,.plan-fiscal-report h3{font-size:16px;margin:0 0 5px}.plan-fiscal-year small{font-size:12px;color:var(--ink2)}.plan-fiscal-summary{display:flex;flex-wrap:wrap;gap:14px 22px;margin:16px 0}.plan-fiscal-summary>span{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--ink2);min-width:110px}.plan-fiscal-summary b{font-size:16px;color:var(--ink);overflow-wrap:anywhere}.plan-fiscal-year .plan-toolbar{margin:12px 0 0}@media(max-width:600px){.plan-fiscal-head{display:block}.plan-fiscal-year{padding:15px}.plan-fiscal-summary b{font-size:15px}}

.plan-weekly-add{display:flex;align-items:center;gap:8px;flex-wrap:nowrap!important}.plan-weekly-add input{flex:1;min-width:0;width:0!important;padding:10px 12px}.plan-weekly-add>button{flex:0 0 40px;width:40px;height:44px}.plan-day-ring circle{fill:none!important;stroke-width:4!important}.plan-day-ring .ring-track{stroke:var(--line2)!important}.plan-day-ring .ring-value{stroke:var(--primary)!important;stroke-linecap:round}

.plan-day-progress p,.plan-activity-facts span,.plan-hero-date,.plan-metrics-compact small{font-size:12px!important;line-height:1.8!important}

.plan-health-workspace{display:flex;flex-direction:column;gap:14px}.plan-health-workspace .plan-page-widget{margin:0}.plan-health-workspace .plan-panel-original>h3{font-size:16px!important}.plan-health-workspace .plan-health-food-block{display:grid;grid-template-columns:1fr 1fr;gap:14px}.plan-health-workspace .plan-health-food-block>.card{margin:0;padding:16px}.plan-health-workspace .plan-page-widget-body>.carb-dash{width:100%;max-width:none}.view-health>.page-head h1{display:none!important}@media(max-width:760px){.plan-health-workspace .plan-health-food-block{grid-template-columns:1fr}.plan-health-workspace .plan-page-widget-body{padding:14px}}

/* Keep heading steps close while preserving emphasis for amounts and progress. */
.view h1,.plan-head h1,.plan-start-greeting h1,.plan-section-overview h1{font-size:22px!important;line-height:1.65!important;letter-spacing:0!important}.view h2,.plan-section h2,.plan-section-head h2,.view-settings h2,.set-detail h2,.settings h2{font-size:16px!important;line-height:1.75!important}.view h3{font-size:15px!important;line-height:1.75!important}.modal-head h2{font-size:18px!important}.plan-project-main h2{font-size:16px!important}.plan-page-widget .plan-fin-widget-title b{font-size:15px!important}.plan-health-workspace .plan-panel-original .card-head,.plan-health-workspace .plan-panel-original .section-head{font-size:15px!important}@media(max-width:600px){.view h1,.plan-head h1,.plan-start-greeting h1,.plan-section-overview h1{font-size:20px!important}.view h2,.plan-section h2,.plan-section-head h2{font-size:15px!important}}

.plan-health-workspace .wp-svg{max-width:520px!important;max-height:260px!important;display:block;margin-inline:auto}.plan-health-workspace .wp-head,.plan-health-workspace .coach-h{gap:8px}.plan-health-workspace .wp-head small,.plan-health-workspace .coach-h small,.plan-health-workspace .cd-it span,.plan-health-workspace .cd-mini span{font-size:13px!important;line-height:1.8}.plan-health-workspace .coach-h .coach-ic,.plan-health-workspace .wp-head .wp-t{display:none}.plan-health-workspace .wp-head>div{flex:1}.plan-health-workspace .coach-b .btn{width:auto!important;flex:0 1 auto}.plan-health-workspace .coach-b{justify-content:flex-start;gap:10px}.plan-health-workspace .cd-grid{max-width:640px;margin-inline:auto}.plan-health-workspace .cd-head{justify-content:flex-end}.plan-health-workspace .cd-head .cd-more{margin-inline-start:auto}@media(max-width:600px){.plan-health-workspace .wp-svg{max-height:200px!important}.plan-health-workspace .coach-b{flex-wrap:wrap}.plan-health-workspace .cd-it span,.plan-health-workspace .cd-mini span{font-size:12px!important}}

/* Five accent palettes inspired by Todoist; neutral surfaces, no pastel canvas. */
:root[data-skin=classic]{--bg:#F3F1EC;--bg2:#EAE6DE;--card:#FFFDFA;--ink:#302D28;--ink2:#575148;--muted:#71695F;--primary:#75614A;--primary2:#62503C;--line:#DAD4C9;--line2:#BDB3A4;--s2:#E8E2D7;--primary-d:var(--primary2);--primary-bg:var(--s2);--on-primary:#fff;--accent2:var(--primary);--side:var(--bg2);--side2:var(--s2);--side-ink:var(--ink2);--side-hi:var(--ink);--side-ic:var(--card);--side-line:var(--line);--side-accent:var(--primary);--s0:var(--card);--s1:var(--card);--card2:var(--bg2);--b1:var(--line);--b2:var(--line2);--ink-hi:var(--ink);--green:#326C52;--red:#AB3E49;--blue:var(--primary);--violet:var(--primary);--film:var(--primary);--orange:#975C34;--amber:#856320;--pink:#954F70;--teal:#2E7464;--hazard:linear-gradient(90deg,var(--primary),var(--bg2));--shadow:0 5px 20px rgba(45,40,60,.05);--shadow-lg:0 18px 50px rgba(45,40,60,.16);--sh:rgba(45,40,60,.08);color-scheme:light;}
:root[data-skin=td-red]{--bg:#F7F5F4;--bg2:#EEEBE9;--ink:#292423;--ink2:#57504D;--muted:#746B67;--primary:#C43B32;--primary2:#A82F28;--line:#DCD5D2;--line2:#BFB4AF;--s2:#F2E5E2;--side:#3D2221;--card:#FFFFFF;--card2:var(--bg2);--primary-d:var(--primary2);--primary-bg:var(--s2);--on-primary:#fff;--accent2:var(--primary);--side2:var(--side);--side-ink:#DEDDE2;--side-hi:#fff;--side-ic:rgba(255,255,255,.08);--side-line:rgba(255,255,255,.15);--side-accent:#fff;--s0:var(--card);--s1:var(--card);--b1:var(--line);--b2:var(--line2);--ink-hi:var(--ink);--green:#326C52;--red:#AB3E49;--blue:var(--primary);--violet:var(--primary);--film:var(--primary);--orange:#975C34;--amber:#856320;--pink:#954F70;--teal:#2E7464;--hazard:linear-gradient(90deg,var(--primary),var(--bg2));--shadow:0 5px 20px rgba(35,35,45,.05);--shadow-lg:0 18px 50px rgba(35,35,45,.16);--sh:rgba(35,35,45,.08);color-scheme:light;}
:root[data-skin=td-orange]{--bg:#F7F6F3;--bg2:#EFECE6;--ink:#302B23;--ink2:#5B5143;--muted:#756C5F;--primary:#AC5921;--primary2:#934917;--line:#DDD6CA;--line2:#BFB4A2;--s2:#F3E9DB;--side:#443124;--card:#FFFFFF;--card2:var(--bg2);--primary-d:var(--primary2);--primary-bg:var(--s2);--on-primary:#fff;--accent2:var(--primary);--side2:var(--side);--side-ink:#DEDDE2;--side-hi:#fff;--side-ic:rgba(255,255,255,.08);--side-line:rgba(255,255,255,.15);--side-accent:#fff;--s0:var(--card);--s1:var(--card);--b1:var(--line);--b2:var(--line2);--ink-hi:var(--ink);--green:#326C52;--red:#AB3E49;--blue:var(--primary);--violet:var(--primary);--film:var(--primary);--orange:#975C34;--amber:#856320;--pink:#954F70;--teal:#2E7464;--hazard:linear-gradient(90deg,var(--primary),var(--bg2));--shadow:0 5px 20px rgba(35,35,45,.05);--shadow-lg:0 18px 50px rgba(35,35,45,.16);--sh:rgba(35,35,45,.08);color-scheme:light;}
:root[data-skin=td-green]{--bg:#F4F6F4;--bg2:#E9EEEA;--ink:#243029;--ink2:#46594D;--muted:#627267;--primary:#27654A;--primary2:#1D523B;--line:#D1DDD4;--line2:#ADBFB2;--s2:#E3ECE6;--side:#1F342C;--card:#FFFFFF;--card2:var(--bg2);--primary-d:var(--primary2);--primary-bg:var(--s2);--on-primary:#fff;--accent2:var(--primary);--side2:var(--side);--side-ink:#DEDDE2;--side-hi:#fff;--side-ic:rgba(255,255,255,.08);--side-line:rgba(255,255,255,.15);--side-accent:#fff;--s0:var(--card);--s1:var(--card);--b1:var(--line);--b2:var(--line2);--ink-hi:var(--ink);--green:#326C52;--red:#AB3E49;--blue:var(--primary);--violet:var(--primary);--film:var(--primary);--orange:#975C34;--amber:#856320;--pink:#954F70;--teal:#2E7464;--hazard:linear-gradient(90deg,var(--primary),var(--bg2));--shadow:0 5px 20px rgba(35,35,45,.05);--shadow-lg:0 18px 50px rgba(35,35,45,.16);--sh:rgba(35,35,45,.08);color-scheme:light;}
:root[data-skin=td-blue]{--bg:#F4F5F7;--bg2:#E9EDF3;--ink:#252D3C;--ink2:#49576D;--muted:#667286;--primary:#2F5EB0;--primary2:#244C94;--line:#D2D9E5;--line2:#AFBDD4;--s2:#E3EAF5;--side:#202E47;--card:#FFFFFF;--card2:var(--bg2);--primary-d:var(--primary2);--primary-bg:var(--s2);--on-primary:#fff;--accent2:var(--primary);--side2:var(--side);--side-ink:#DEDDE2;--side-hi:#fff;--side-ic:rgba(255,255,255,.08);--side-line:rgba(255,255,255,.15);--side-accent:#fff;--s0:var(--card);--s1:var(--card);--b1:var(--line);--b2:var(--line2);--ink-hi:var(--ink);--green:#326C52;--red:#AB3E49;--blue:var(--primary);--violet:var(--primary);--film:var(--primary);--orange:#975C34;--amber:#856320;--pink:#954F70;--teal:#2E7464;--hazard:linear-gradient(90deg,var(--primary),var(--bg2));--shadow:0 5px 20px rgba(35,35,45,.05);--shadow-lg:0 18px 50px rgba(35,35,45,.16);--sh:rgba(35,35,45,.08);color-scheme:light;}
:root[data-skin=td-purple]{--bg:#F6F4F7;--bg2:#EDE9F1;--ink:#302839;--ink2:#594C66;--muted:#756780;--primary:#7045A5;--primary2:#5D368E;--line:#DAD2E2;--line2:#BDAECB;--s2:#EBE3F2;--side:#302641;--card:#FFFFFF;--card2:var(--bg2);--primary-d:var(--primary2);--primary-bg:var(--s2);--on-primary:#fff;--accent2:var(--primary);--side2:var(--side);--side-ink:#DEDDE2;--side-hi:#fff;--side-ic:rgba(255,255,255,.08);--side-line:rgba(255,255,255,.15);--side-accent:#fff;--s0:var(--card);--s1:var(--card);--b1:var(--line);--b2:var(--line2);--ink-hi:var(--ink);--green:#326C52;--red:#AB3E49;--blue:var(--primary);--violet:var(--primary);--film:var(--primary);--orange:#975C34;--amber:#856320;--pink:#954F70;--teal:#2E7464;--hazard:linear-gradient(90deg,var(--primary),var(--bg2));--shadow:0 5px 20px rgba(35,35,45,.05);--shadow-lg:0 18px 50px rgba(35,35,45,.16);--sh:rgba(35,35,45,.08);color-scheme:light;}
:root[data-theme=light] .sidebar{background:var(--side)!important;color:var(--side-ink)}
:root[data-theme=light] .plan-account{background:var(--s2);border-color:var(--line2);color:var(--ink)}
:root[data-theme=light] .plan-account :is(b,strong){color:var(--ink)}
:root[data-theme=light] .plan-account small{color:var(--ink2)}
:root[data-theme=light] .plan-account-icon{background:var(--bg2)!important;color:var(--ink)!important}
:root[data-theme=light] .plan-tag{background:var(--s2);color:var(--ink2)}
:root[data-theme=light] .plan-week-strip>button.selected,:root[data-theme=light] .plan-week-strip>button.selected small{color:var(--on-primary)}
:root[data-theme=light] .btn.green{background:color-mix(in srgb,var(--green) 12%,var(--card));color:var(--green)}
:root[data-theme=light] .btn.danger{background:color-mix(in srgb,var(--red) 12%,var(--card));color:var(--red)}
.skin-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.skin-card{border:1px solid var(--line2)!important;background:var(--card)!important;border-radius:14px!important;overflow:hidden}
.skin-card.on{border-color:var(--primary)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)!important}
.skin-card .skin-prev{border-radius:9px;overflow:hidden}
.skin-card[data-palette=light] .skin-prev>i{border-inline-end:1px solid rgba(35,35,50,.12)}
.skin-card b{font-size:14px!important;line-height:1.8;color:var(--ink)}
.plan-start-hero .plan-card-tools{display:flex;justify-content:flex-end;margin-top:14px}
#app .plan-page-layout{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line2);background:color-mix(in srgb,var(--primary) 5%,var(--card));color:var(--ink2);border-radius:10px;min-height:34px;font-size:12px!important;padding:6px 10px;white-space:nowrap}
#app .plan-page-layout .ic{width:16px;height:16px;color:var(--primary)}
#app .plan-page-layout:hover{background:var(--s2);color:var(--ink);border-color:var(--primary)}
#app .plan-activity-heading>.plan-page-layout{margin-top:14px}
#app .plan-layout-in-header{margin-inline:4px;flex:none}
.plan-layout-restore{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px!important;color:var(--ink2)}
@media(max-width:760px){.skin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.skin-card b{font-size:13px!important}#app .plan-layout-in-header{padding:6px;gap:4px}#app .plan-layout-in-header span{font-size:11px}.plan-fin-widget-header:has(.plan-layout-in-header){gap:2px}.plan-layout-restore{font-size:13px}#app .plan-activity-heading>.plan-page-layout{margin-top:10px}}
:root[data-theme=light] .btn.primary{color:var(--on-primary)!important}
#app .plan-page-layout{border-color:var(--line2)!important;background:color-mix(in srgb,var(--primary) 5%,var(--card))!important;color:var(--ink2)!important}
#app .plan-page-layout:hover{background:var(--s2)!important;border-color:var(--primary)!important;color:var(--ink)!important}

/* Keep navy independent of the neutral default palette. */
:root[data-skin=navy] {
  --primary2:#29B6F6; --bg: #0B1220; --bg2: #101A2C; --card: #111C30; --card2: #16243C; --ink: #E6EDF7; --ink2: #B4C2D6; --muted: #7A8BA3; --line: #1D2A40; --line2: #2A3A55;
  --primary: #4FC3F7; --primary-d: #29B6F6; --primary-bg: rgba(79, 195, 247, .12); --on-primary: #06121F; --accent2: #7C9CFF;
  --violet: #7C9CFF; --blue: #4FC3F7; --green: #34D399; --orange: #FB923C; --amber: #FBBF24; --pink: #F472B6; --teal: #2DD4BF; --red: #F87171; --film: #4FC3F7;
  --shadow: 0 1px 0 rgba(255, 255, 255, .03) inset, 0 10px 30px rgba(0, 0, 0, .4); --shadow-lg: 0 30px 80px rgba(0, 0, 0, .6);
  --side: #070D18; --side2: #0D1626; --side-ink: #9FB0C8; --side-hi: #FFFFFF; --side-ic: #13203A; --side-line: #1D2A40; --side-accent: #4FC3F7;
  --hazard: repeating-linear-gradient(-45deg, #4FC3F7 0 12px, #0B1220 12px 24px); --hz-op: .6;
  --s0: #0D1626; --s1: #111C30; --s2: #16243C; --b1: #1D2A40; --b2: #2A3A55; --ink-hi: #FFFFFF; --sh: rgba(0, 0, 0, .5);
  color-scheme: dark;
}
.plan-activity-overview.plan-daily-reviews,.plan-section-overview.plan-daily-reviews{background-color:var(--card)}

/* Shared compact workspaces and unobtrusive layout control. */
:root[data-skin^=td-] .plan-sidebar :is(.nav button,.plan-settings-link,.plan-more-nav summary,.brand-copy small,.plan-save){color:var(--side-ink)}
:root[data-skin^=td-] .plan-sidebar .brand-copy strong{color:var(--side-hi)}
:root[data-skin^=td-] .plan-sidebar .nav button.active{background:rgba(255,255,255,.13)!important;color:var(--side-hi)}
:root[data-skin^=td-] .plan-sidebar .nav button:hover{color:var(--side-hi);background:rgba(255,255,255,.08)}
:root[data-skin^=td-] .sidebar{background:var(--side)!important}
#app .plan-page-layout{width:32px;height:32px;min-height:32px;padding:6px!important;gap:0;border:0!important;background:transparent!important;color:var(--muted)!important;opacity:.72;border-radius:8px!important;flex:none}
#app .plan-page-layout .ic{width:18px;height:18px;color:inherit}
#app .plan-page-layout:hover,#app .plan-page-layout:focus-visible{opacity:1;background:var(--s2)!important;color:var(--ink)!important}
#app .plan-start-hero .plan-page-layout{position:absolute;top:7px;inset-inline-end:7px;margin:0!important}
#app .plan-layout-in-header{position:static;margin:0!important;opacity:.8}
#app .plan-page-layout:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.plan-category-picker.cat-grid{display:flex!important;align-items:center;gap:8px;padding:0;background:transparent;border:0;grid-template-columns:none}
.plan-category-picker.cat-grid[hidden],.plan-category-original[hidden]{display:none!important}
.plan-category-picker select{flex:1;min-width:0;width:100%;min-height:44px;padding:10px 12px;font-size:14px;cursor:pointer}
.plan-category-picker .cat-add{width:40px;min-width:40px;height:40px;min-height:40px;border:1px solid var(--line);padding:0;background:var(--card);color:var(--ink2)}
.plan-project-panels{display:flex;flex-direction:column;gap:0;min-width:0}
.plan-project-detail-overview .plan-overview-heading{min-width:0}
.plan-project-detail-overview h1{overflow-wrap:anywhere;padding-inline-end:16px}
.plan-project-card-nav{display:flex;flex-direction:column;gap:12px;min-width:0}
.plan-project-card-nav .plan-back{font-size:12px;align-self:flex-start}
.plan-project-card-nav .plan-work-tabs{margin:0;padding:0;border:0;max-width:100%;gap:6px}
.plan-project-finance-actions{gap:8px;margin:12px 0 0!important;flex-wrap:wrap}
.plan-project-panels .plan-panel-original{max-width:100%;min-width:0}
.plan-project-panels .plan-panel-original>.ph-top{padding-bottom:12px}
.plan-project-panels .plan-page-widget-body{padding:16px}
.plan-project-panels .plan-project-sub-work>.ws-bar{margin-top:0}
.plan-project-panels .plan-project-sub-work>.card,.plan-project-panels .plan-project-sub-work>.scene-card{border:1px solid var(--line)!important;box-shadow:none!important;background:var(--card)!important}
.plan-project-panels .plan-resolve-section>summary{display:list-item;cursor:pointer;padding:12px 0;font-size:15px;font-weight:600;color:var(--ink)}
.plan-money-detail-content{min-width:0}
@media(max-width:760px){.plan-category-picker select{font-size:16px}.plan-project-detail-overview .plan-activity-facts{gap:7px}.plan-project-card-nav .plan-work-tabs{flex-wrap:nowrap;overflow:auto;scrollbar-width:none}.plan-project-card-nav .plan-work-tabs .btn{flex-shrink:0;font-size:12px!important}.plan-project-panels .plan-page-widget-body{padding:14px}.plan-project-panels .ph-ring{flex:none}.plan-project-finance-actions .btn{font-size:12px}.plan-category-picker .cat-add{width:44px;min-width:44px;height:44px}}

.plan-fin-flow-circle b{font-size:15px!important;line-height:1.6}
@media(max-width:760px){.plan-fin-flow-circle b{font-size:14px!important}}

/* Fast income/expense entry: four essentials, optional details on demand. */
.tx-types[hidden]{display:none!important}
.plan-quick-tx-modal{max-width:480px!important}
.plan-quick-finance{display:flex;flex-direction:column;gap:14px}
.plan-quick-finance>.amount-field{margin:0;padding:16px;border:1px solid var(--line);border-radius:13px;background:var(--card)}
.plan-quick-finance .amount-field label{font-size:13px;color:var(--ink2)}
.plan-quick-finance [name=amount]{font-size:26px!important;padding:12px;min-height:54px;font-weight:500}
.plan-quick-finance .amount-words{font-size:12px;min-height:0;margin-top:6px;line-height:1.7}
.plan-tx-main-fields{padding:4px 16px;border:1px solid var(--line);border-radius:13px;background:var(--card)}
.plan-tx-main-fields>.field{margin:0;padding:12px 0;gap:7px;display:flex;flex-direction:column}
.plan-tx-main-fields>.field+.field{border-top:1px solid var(--line)}
.plan-tx-main-fields label{font-size:13px;color:var(--ink2)}
.plan-tx-main-fields select{min-height:44px;font-size:14px}
.plan-tx-date>summary{display:flex;align-items:center;gap:7px;width:fit-content;list-style:none;cursor:pointer;color:var(--ink2);font-size:12px;padding:3px 0}
.plan-tx-date>summary::-webkit-details-marker,.plan-tx-more>summary::-webkit-details-marker{display:none}
.plan-tx-date>summary .ic{width:15px;height:15px}
.plan-tx-date>summary .ic:last-child{width:12px;height:12px}
.plan-tx-date>.form-grid{margin-top:10px}
.plan-tx-more{border:1px solid var(--line);border-radius:12px;background:var(--card)}
.plan-tx-more>summary{display:flex;align-items:center;gap:7px;list-style:none;cursor:pointer;padding:12px 16px;font-size:13px;color:var(--ink2)}
.plan-tx-more>summary small{margin-inline-start:auto;max-width:55%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:12px;color:var(--muted)}
.plan-tx-more>summary .ic{width:16px;height:16px}
.plan-tx-more[open]>summary{border-bottom:1px solid var(--line)}
.plan-tx-more[open]>summary .ic:first-child{transform:rotate(45deg)}
.plan-tx-extra{padding:14px 16px}
.plan-tx-extra .form-grid{gap:12px}
.plan-tx-extra .pay-row{margin:0 0 14px}
.plan-tx-extra .hint{font-size:12px}
.plan-quick-finance>.form-actions{margin:0;padding-top:0;gap:8px}
.plan-quick-finance>.form-actions>.btn.primary{flex:1;min-height:44px;font-size:14px!important}
.plan-quick-finance>.form-actions>.btn.ghost{font-size:13px}
@media(max-width:760px){.plan-quick-tx-modal .modal-body{padding:16px!important}.plan-tx-main-fields select{font-size:16px!important}.plan-quick-finance .amount-field{padding:14px}.plan-tx-extra .form-grid{grid-template-columns:1fr}.plan-tx-more>summary{min-height:44px}.plan-quick-finance{gap:12px}}

/* Accounting plus: a small contextual quick-action sheet. */
.plan-tx-date:not([open])>.form-grid,.plan-tx-more:not([open])>.plan-tx-extra{display:none!important}
.plan-finance-quick-menu{max-width:440px!important}
.plan-finance-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px 0 6px}
.plan-finance-quick-grid>button{display:flex;flex-direction:column;align-items:center;gap:10px;padding:4px 0 12px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:14px;cursor:pointer;border-radius:14px}
.plan-finance-quick-grid>button>i{display:grid;place-items:center;width:54px;height:54px;border:1px solid var(--line);border-radius:50%;background:var(--panel);color:var(--quick-color);font-style:normal}
.plan-finance-quick-grid>button>i .ic{width:22px;height:22px}
.plan-finance-quick-grid>button:hover,.plan-finance-quick-grid>button:focus-visible{background:var(--hover);outline:2px solid var(--primary);outline-offset:2px}
.plan-category-picker>.cat-add .ic{display:block!important;width:18px!important;height:18px!important;color:var(--ink)!important}

.plan-category-picker>.cat-add{justify-content:center}
.plan-category-picker>.cat-add .ic{padding:0!important;background:transparent!important;border-radius:0}
/* Personal weight history and dated progress photos. */
.plan-weight-chart-open{display:block;width:100%;padding:0;border:0;background:transparent;cursor:pointer;border-radius:12px;color:inherit}
.plan-weight-chart-open:hover,.plan-weight-chart-open:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.plan-weight-open{font-size:13px!important;margin-top:8px;min-height:40px;color:var(--ink2)!important}
.plan-weight-history-modal,.plan-diet-list-modal{max-width:620px!important}
.plan-weight-tabs{display:flex;padding:4px;gap:4px;background:var(--bg2);border-radius:12px;margin-bottom:18px}
.plan-weight-tabs>button{flex:1;background:transparent;border:0;border-radius:9px;min-height:40px;font:inherit;font-size:14px;color:var(--muted);cursor:pointer}
.plan-weight-tabs>button[aria-selected=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 3px #00000014}
.plan-weight-history-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.plan-weight-history-summary>span{display:flex;flex-direction:column;gap:5px;padding:12px 14px;background:var(--bg2);border-radius:12px;color:var(--ink2);font-size:13px}
.plan-weight-history-summary b{color:var(--ink);font-size:19px;font-weight:600}
.plan-weight-history-chart{width:100%;height:120px;margin:12px 0}
.plan-weight-history-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:16px 0 10px}
.plan-weight-history-head h3{margin:0;font-size:15px!important}.plan-weight-history-head h3 small{font-size:12px;color:var(--muted);margin-inline-start:5px}
.plan-weight-history-head .btn{font-size:13px!important;min-height:40px}
.plan-weight-history-list,.plan-weight-photo-list,.plan-diet-list{display:flex;flex-direction:column;gap:8px}
.plan-weight-history-row,.plan-weight-photo-row{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:6px 8px;background:var(--card)}
.plan-weight-history-row>button:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:1;min-width:0;min-height:44px;padding:6px;background:transparent;border:0;text-align:start;color:var(--ink);font:inherit;font-size:13px;cursor:pointer}
.plan-weight-history-row strong{white-space:nowrap;font-size:17px;font-weight:600}.plan-weight-history-row strong small{font-size:12px;font-weight:400;color:var(--ink2)}
.plan-weight-history-row .icon-btn,.plan-weight-photo-row .icon-btn{width:36px;height:36px;flex:none;color:var(--muted)}
.plan-weight-photo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.plan-weight-photo-slot{min-width:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card);padding:10px;display:flex;flex-direction:column;gap:8px}
.plan-weight-photo-label{display:flex;align-items:center;justify-content:space-between;font-size:14px}.plan-weight-photo-label .icon-btn{width:32px;height:32px;color:var(--muted)}
.plan-weight-photo-image{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;width:100%;height:245px;padding:0;border:0;border-radius:9px;background:var(--bg2);cursor:pointer;color:var(--ink2);font:inherit}
.plan-weight-photo-image img{display:block;width:100%;height:100%;object-fit:contain}.plan-weight-photo-image.is-empty{border:1px dashed var(--line);font-size:13px}
.plan-weight-photo-image.is-empty .ic{width:24px;height:24px}.plan-weight-photo-slot>small{font-size:12px;color:var(--ink2);text-align:center}.plan-weight-photo-slot select{width:100%;min-height:40px;padding:7px;font-size:12px}
.plan-weight-photo-row>button:first-child{flex:1;display:flex;align-items:center;gap:10px;min-width:0;background:transparent;border:0;text-align:start;color:var(--ink);font:inherit;cursor:pointer;padding:0}
.plan-weight-photo-row img{width:44px;height:52px;object-fit:cover;border-radius:7px;flex:none}.plan-weight-photo-row span{display:flex;flex-direction:column;min-width:0;gap:4px}.plan-weight-photo-row b{font-size:13px;font-weight:500}.plan-weight-photo-row small{font-size:12px;color:var(--ink2);overflow-wrap:anywhere}
.plan-weight-empty{font-size:13px;color:var(--muted);padding:16px 0;text-align:center;line-height:1.8}
.plan-diet-access{font-size:13px!important;min-height:40px;margin-top:8px}
.plan-diet-current{display:flex;flex-direction:column;gap:7px;border:1px solid var(--line);background:var(--bg2);border-radius:14px;padding:14px}.plan-diet-current>span,.plan-diet-current>small{font-size:13px;color:var(--ink2)}.plan-diet-current>b{font-size:18px;font-weight:600}
.plan-diet-card{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--card)}.plan-diet-card>div:first-child{display:flex;flex-direction:column;gap:6px}.plan-diet-card b{font-size:15px;font-weight:600}.plan-diet-card small{font-size:12px;color:var(--ink2)}
.plan-diet-card-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.plan-diet-card-actions>.btn{min-height:36px;font-size:13px!important}
.plan-diet-meals{border:1px solid var(--line);border-radius:12px;padding:0 12px;margin-top:14px}.plan-diet-meals>summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-size:13px;color:var(--ink2)}.plan-diet-meals>summary:before{content:'+';margin-inline-end:8px}.plan-diet-meals[open]>summary:before{content:'−'}
.plan-diet-meals .field{margin-bottom:12px}.plan-diet-meals p{display:flex;gap:12px;align-items:flex-start;font-size:13px}.plan-diet-meals p>b{font-size:13px;white-space:nowrap}.plan-diet-meals p>span,.plan-diet-note{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8;color:var(--ink2)}.plan-diet-activate{margin:16px 0;font-size:13px!important}
@media(max-width:600px){.plan-weight-photo-pair{gap:8px}.plan-weight-photo-slot{padding:8px}.plan-weight-photo-image{height:190px}.plan-weight-history-row>button:first-child{flex-wrap:wrap;gap:4px}.plan-weight-photo-slot select{font-size:16px}.plan-weight-history-modal .modal-body,.plan-diet-list-modal .modal-body{padding:16px!important}.plan-weight-history-summary b{font-size:18px}}
.plan-diet-tabs{margin-top:16px}.plan-diet-catalog{display:grid;gap:12px}.plan-diet-template{position:relative;display:flex;min-height:146px;text-align:start;padding:18px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(120deg,color-mix(in srgb,var(--diet-color) 17%,var(--card)),var(--card));color:var(--ink);font:inherit;overflow:hidden;cursor:pointer}
.plan-diet-template>span{display:flex;flex-direction:column;gap:6px;width:75%;position:relative;z-index:1}.plan-diet-template small{font-size:11px;color:var(--ink2);direction:ltr;text-align:start;width:fit-content}.plan-diet-template b{font-size:20px;font-weight:600}.plan-diet-template em{font-style:normal;font-size:13px;color:var(--ink2);line-height:1.9}.plan-diet-template i{display:flex;align-items:center;gap:5px;font-style:normal;font-size:12px;color:var(--ink2);margin-top:4px}.plan-diet-template:hover,.plan-diet-template:focus-visible{outline:2px solid var(--diet-color);outline-offset:2px}
.plan-diet-art{position:absolute;width:110px;height:110px;inset-inline-end:-12px;top:12px;opacity:.65;color:var(--diet-color)}.plan-diet-custom{margin-top:14px;width:100%}
.plan-diet-template-intro{position:relative;min-height:140px;border-radius:14px;background:linear-gradient(120deg,color-mix(in srgb,var(--diet-color) 20%,var(--card)),var(--card));display:flex;align-items:center;padding:22px;overflow:hidden}.plan-diet-template-intro>b{font-size:24px;z-index:1}.plan-diet-template-intro .plan-diet-art{width:140px;height:140px;top:0;inset-inline-end:0}.plan-diet-template-info{max-width:540px!important}.plan-diet-template-info h3{font-size:15px!important}.plan-diet-guidance{font-size:12px;color:var(--ink2);line-height:1.9}.plan-diet-source{font-size:12px;color:var(--primary);text-decoration:underline}.plan-diet-form-context{font-size:13px;color:var(--ink2);margin:0 0 14px;line-height:1.8}
.plan-diet-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.plan-diet-review-grid>span{display:flex;flex-direction:column;gap:7px;font-size:13px;padding:14px;border-radius:12px;background:var(--bg2);color:var(--ink2)}.plan-diet-review-grid b{font-size:18px;color:var(--ink);font-weight:500}
/* Persistent work controls remain available without taking over the page. */
.plan-global-timer{position:sticky;top:var(--plan-timer-top,80px);z-index:31;display:flex;align-items:center;gap:3px;min-height:58px;padding:5px 9px;margin:0 0 16px;border:1px solid color-mix(in srgb,var(--primary) 35%,var(--line));border-radius:16px;background:var(--card);box-shadow:0 6px 20px #0001}
.plan-global-timer-main{display:flex;align-items:center;gap:12px;flex:1;min-width:0;padding:4px 5px;text-align:right;color:var(--ink);background:none;border:0;cursor:pointer}
.plan-global-timer-label{display:flex;flex:1;min-width:0;flex-direction:column}.plan-global-timer-label b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.plan-global-timer-label small{font-size:11px;color:var(--muted)}
.plan-global-timer-main strong{direction:ltr;white-space:nowrap;font-size:20px;font-variant-numeric:tabular-nums;color:var(--primary)}.plan-global-timer>.btn{width:42px;min-width:42px;min-height:44px;padding:9px}.plan-global-timer.paused .live-dot{animation:none;background:var(--muted)}
.plan-timer-control-time{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 8px 26px}.plan-timer-control-time b{font-size:44px;color:var(--primary);direction:ltr;font-variant-numeric:tabular-nums}.plan-timer-control-time span{font-size:16px;text-align:center;overflow-wrap:anywhere}.plan-timer-control-time small{color:var(--muted);font-size:13px}.plan-timer-controls-actions{display:flex;flex-direction:column;gap:10px}.plan-timer-controls-actions>.btn{min-height:48px;justify-content:center}
#focusRoot{position:fixed;inset:0;z-index:2000}.focus-on{overflow:hidden}.focus-mode{height:100%;min-height:100dvh;box-sizing:border-box;overflow:auto}.focus-mode .fm-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding-top:60px}.focus-mode .fm-ring{width:min(430px,72vw,55dvh);flex-shrink:0}.focus-mode h2{font-size:22px!important;line-height:1.7;text-align:center}.focus-mode .fm-time b{font-size:clamp(36px,8vw,68px)}.focus-mode .fm-quote{font-size:14px;text-align:center}.focus-mode .fm-top{top:calc(var(--plan-safe-top,0px) + 18px)!important}.focus-mode .fm-top .icon-btn{width:auto;gap:6px;padding:10px}.focus-mode .fm-actions{flex-wrap:wrap;justify-content:center}.focus-mode .fm-actions>.btn{min-height:48px}
@media(max-width:760px){.plan-global-timer{margin-bottom:12px;gap:0;padding:4px 5px}.plan-global-timer-main{gap:8px}.plan-global-timer-main strong{font-size:18px}.plan-global-timer-label b{font-size:13px}.plan-global-timer>.btn{width:40px;min-width:40px;padding:9px}.plan-global-timer .live-dot{display:none}.focus-mode .fm-ring{width:min(350px,82vw,48dvh)}.focus-mode h2{font-size:19px!important}.focus-mode .fm-actions{gap:8px}.focus-mode .fm-actions>.btn{font-size:13px;padding:10px 12px}}
.plan-timer-discard{display:flex;margin:16px auto 0;font-size:12px;color:var(--muted)}
.focus-mode .fm-top .icon-btn{display:flex;align-items:center;justify-content:center;min-height:44px}.focus-mode .fm-top .icon-btn span{position:static!important;display:inline!important;transform:none!important;font-size:13px;line-height:1.5}.focus-mode .fm-track{stroke:color-mix(in srgb,var(--primary) 12%,var(--line))}
.plan-fiscal-setting-button{margin-bottom:20px}
/* Settings use the same readable body scale as the rest of the app. */
.view-settings .ios-row .ios-t{font-size:14px!important;line-height:1.7!important}.view-settings .ios-row .ios-v,.view-settings .ios-row .ios-t small{font-size:12px!important;line-height:1.7!important}.view-settings .ios-h{font-size:13px!important;line-height:1.7!important}.view-settings .set-detail .ios-row,.view-settings .settings-hub .ios-row{min-height:46px}.view-settings .m-bar-title b{font-size:16px!important}.view-settings .plan-fiscal-setting-button b{font-size:14px!important}
.plan-diet-auto-mode{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0 8px}.plan-diet-auto-mode label{font-size:14px;font-weight:600}.plan-diet-auto-mode select{width:auto;max-width:58%;font-size:14px}.plan-diet-estimate{font-size:12px;line-height:1.8;color:var(--muted);margin:8px 0 14px}.plan-diet-form-modal input[readonly]{color:var(--primary);font-weight:700;background:color-mix(in srgb,var(--primary) 6%,var(--card))}.plan-diet-calculation-detail{font-size:12px;line-height:1.85;color:var(--muted);margin:8px 0 16px}.plan-diet-calculation-detail summary{cursor:pointer}.plan-diet-calculation-detail a{display:block;margin-top:8px;color:var(--primary)}
.plan-diet-macros{display:flex;align-items:center;gap:18px;margin:16px 0;min-width:0}.plan-diet-macro-ring{position:relative;width:116px;min-width:116px;aspect-ratio:1}.plan-diet-macro-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.plan-diet-macro-ring>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column}.plan-diet-macro-ring b{font-size:22px}.plan-diet-macro-ring small{font-size:10px;color:var(--muted)}.plan-diet-macro-legend{display:flex;flex-direction:column;gap:7px;flex:1;min-width:0}.plan-diet-macro-legend>span{display:flex;align-items:center;gap:6px;font-size:12px;white-space:nowrap}.plan-diet-macro-legend i{width:8px;height:8px;border-radius:50%;flex:none}.plan-diet-macro-legend b{font-size:12px!important;font-weight:500}.plan-diet-macro-legend em{font-style:normal;margin-inline-start:auto}.plan-diet-macro-legend small{min-width:28px;color:var(--muted);font-size:11px}.plan-diet-template{flex-wrap:wrap;position:relative}.plan-diet-template>.plan-diet-macros{width:100%;order:2;margin:10px 0 0;pointer-events:none}.plan-diet-template>span{width:100%}.plan-diet-template-intro .plan-diet-macros{max-width:400px;width:100%;margin:0}.plan-diet-template-intro{display:flex;flex-direction:column;align-items:center}.plan-diet-drawer-actions{margin-bottom:12px}.plan-diet-drawer-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 0;border-top:1px solid var(--line)}.plan-diet-drawer-row>button:first-child{flex:1;text-align:start;background:none;border:0;color:var(--ink);display:flex;flex-direction:column;gap:4px;cursor:pointer}.plan-diet-drawer-row small{color:var(--muted);font-size:12px}.plan-diet-drawer-row .plan-diet-macros{width:100%;margin:5px 0}.plan-diet-foods-icon{margin-inline-start:auto}.plan-diet-food-list{display:flex;flex-direction:column;gap:12px}.plan-diet-food-list>section{padding:14px;background:var(--s2);border:1px solid var(--line);border-radius:14px}.plan-diet-food-list small{color:var(--muted);font-size:11px}.plan-diet-food-list h3{font-size:15px;margin:5px 0}.plan-diet-food-list p{font-size:13px;line-height:1.8;margin:0;color:var(--ink2)}.plan-diet-calculation-detail{margin-top:14px}

/* Small pending-item markers share one count source on desktop and phone. */
.plan-sidebar .nav button{position:relative}.plan-sidebar .nav button>svg{flex-shrink:0}
.plan-nav-badge{position:absolute;inset-inline-start:5px;top:3px;display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 5px;margin-inline-start:auto;border-radius:99px;background:color-mix(in srgb,var(--primary) 24%,var(--card));color:var(--ink);font-size:11px!important;font-style:normal;font-weight:700;line-height:1;flex-shrink:0}
.m-tabs button>i{font-size:10px!important;min-width:17px;height:17px;line-height:17px}

.plan-track-ranges,.plan-track-modes{display:flex;gap:6px}.plan-track-ranges>*{flex:1}.plan-track-modes>*{flex:1}.plan-goal-track .plan-section{margin:12px 0;padding:16px}.plan-goal-track h3{font-size:15px;margin:0}.plan-track-numbers{display:flex;justify-content:space-between;gap:8px;margin:10px 0;font-size:13px}.plan-track-chart{width:100%;height:155px;display:block}.plan-track-record-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.plan-track-record-form>.field{min-width:0}.plan-track-record-form>button{align-self:end;justify-self:end}.plan-track-record-form>.form-error{grid-column:1/-1}.plan-track-records>div{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.plan-track-records>div>span{flex:1}.plan-track-records small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.plan-track-records b{font-size:13px}.plan-goal-track .muted{font-size:13px}

.pro-admin .pa-box,.pro-login .pl-card{font-family:inherit;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:20px}.pro-admin .pa-box{max-width:880px;width:calc(100% - 28px);max-height:calc(100dvh - 40px);margin:auto}.pro-admin h2,.pro-login h1{font-size:21px!important}.pro-admin :is(button,input,select,label,p),.pro-login :is(button,input,p,li){font-size:14px!important}.pro-admin .pa-row{gap:10px;flex-wrap:wrap}.pro-admin .pa-row code{font-size:14px}.pro-admin .pa-btn,.pro-login .pl-google{background:var(--primary);color:var(--ink)}.plan-account-email{font-size:14px;overflow-wrap:anywhere}.plan-account-access h2{font-size:17px}.pro-admin .pa-body{padding:18px}@media(max-width:600px){.pro-admin .pa-make{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pro-admin .pa-make .grow{grid-column:1/-1}.pro-admin .pa-row .grow{min-width:100%;overflow-wrap:anywhere}.pro-admin .pa-until{font-size:12px}.pro-admin .pa-box{max-height:calc(100dvh - env(safe-area-inset-top) - 40px)}}
.goal-detail .num-track.plan-goal-track{display:block!important;grid-template-columns:none!important;width:100%;min-width:0}.plan-goal-track .plan-track-ranges{width:100%;margin:12px 0}.plan-goal-track .plan-track-chart{min-width:0}.plan-goal-track .plan-track-record-form .field{margin:0}

.plan-goal-track .plan-track-chart{height:92px}.plan-goal-track-widget .plan-panel-original{padding:10px 12px!important;margin:0!important}.plan-goal-track-widget{margin:10px 0}.plan-goal-panel-grip{touch-action:none}.plan-goal-track-widget.is-dragging{opacity:.65;border-color:var(--primary)}

.plan-tx-project-context{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:13px;margin:8px 0 16px;overflow-wrap:anywhere}.plan-tx-project-context>span{padding:5px 10px;border:1px solid var(--line);border-radius:8px}.plan-tx-project-context .field{flex:1;min-width:160px;margin:0}.plan-tx-project-context input{width:100%;min-width:0}
@media(max-width:760px){html body input:not([type=checkbox]):not([type=radio]):not([type=range]),html body textarea:not([data-plan-ignore]),html body select:not([data-plan-ignore]){font-size:16px!important;max-width:100%;box-sizing:border-box}html body .modal-backdrop{top:var(--plan-visible-top,0px)!important;bottom:auto!important;height:var(--plan-visible-height,100dvh)!important;box-sizing:border-box;overflow:hidden}html body .modal-backdrop .modal{width:100%;min-width:0;max-height:calc(var(--plan-visible-height,100dvh) - var(--plan-safe-top) - var(--plan-safe-bottom) - 24px)!important;overflow-y:auto;overscroll-behavior:contain}.modal .form-grid>*{min-width:0}.plan-tx-project-context{font-size:13px}}
.plan-project-four-tabs{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;overflow:visible!important}
.plan-project-four-tabs .btn,.plan-project-phase-select{min-height:44px;font-size:14px!important;width:100%;min-width:0;padding:8px 7px;white-space:normal!important;text-align:center;border-radius:12px}
.plan-project-phase-select{background:var(--surface);color:var(--text);border:1px solid var(--line);font:inherit;cursor:pointer}
.plan-project-phase-select.active{border-color:var(--primary);color:var(--primary)}
.plan-step-group{border-top:1px solid var(--line);padding:12px 0}.plan-step-group>summary{display:flex;justify-content:space-between;gap:12px;min-height:44px;align-items:center;cursor:pointer}.plan-step-group small{color:var(--muted)}
.plan-step-add{display:grid!important;grid-template-columns:minmax(0,1fr) 44px!important;gap:8px;margin-top:12px}.plan-step-add input{width:100%;min-width:0}.plan-step-add button{width:44px;height:44px}
.plan-project-subtabs{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.plan-project-subtabs button{min-height:44px;flex-shrink:0;font-size:14px}
.plan-account-sheet{max-height:calc(100dvh - 48px)}.plan-account-history{margin-top:20px;border-top:1px solid var(--line);padding-top:14px}.plan-account-history h3{font-size:15px;margin-bottom:12px}.plan-account-history .plan-person-history-row{width:100%;min-height:52px}.plan-account-history small{font-size:12px;color:var(--muted)}
@media(max-width:760px){.plan-project-card-nav{display:block}.plan-project-card-nav .plan-back{margin-bottom:10px}.plan-project-four-tabs .btn,.plan-project-phase-select{font-size:12px!important;min-height:48px}.plan-project-phase-select{font-size:16px!important}.plan-project-steps .plan-check-row{grid-template-columns:20px 24px minmax(0,1fr);gap:8px}.plan-step-add input{font-size:16px}.plan-project-subtabs button{font-size:13px!important}.plan-account-sheet .plan-person-history-row strong{font-size:13px}.plan-account-sheet .plan-person-history-row .plan-item-main{min-width:0}.plan-account-sheet .plan-person-history-row b{overflow-wrap:anywhere}}

/* Goal Wizard-inspired charcoal blue, replacing the former white/red skin. */
:root[data-skin=td-red]{--bg:#19191B;--bg2:#222326;--card:#242528;--card2:#222326;--ink:#F4F4F5;--ink2:#D9DADD;--muted:#A0A1A6;--primary:#25A6D5;--primary2:#188BB5;--line:#393B40;--line2:#50535B;--s2:#203E4B;--side:#19191B;--side2:#222326;--side-ink:#D9DADD;--side-hi:#FFFFFF;--side-accent:#25A6D5;--green:#5EBB72;--red:#FF544E;--on-primary:#FFFFFF;--shadow:0 4px 16px #00000012;--shadow-lg:0 18px 50px #00000040;color-scheme:dark}
:root[data-skin=td-red] .sidebar{background:var(--side)!important}:root[data-skin=td-red] .btn.primary{color:#10232A!important}
.plan-touch-lifted{animation:plan-lift .18s ease-out forwards;outline:2px solid var(--primary);box-shadow:0 8px 25px #00000025;position:relative;z-index:3}.plan-touch-target{outline:2px dashed var(--primary);background:var(--s2)!important}.plan-item{ -webkit-touch-callout:none}.plan-item button{-webkit-user-select:none;user-select:none}
@keyframes plan-lift{to{transform:scale(1.015)}}
.is-list .plan-project.plan-swipe-open{padding-left:12px}.is-list .plan-goal.plan-swipe-open{padding-left:16px}.is-list .plan-project,.is-list .plan-goal{overflow:hidden;touch-action:pan-y}.is-list .plan-project>*,.is-list .plan-goal>*{transition:transform .18s ease}.is-list .plan-swipe-open>:not(.plan-swipe-delete){transform:translateX(-82px)}.is-list .plan-swipe-open>.plan-swipe-delete{left:auto;right:0;width:74px;border-radius:0 10px 10px 0;z-index:4}
.plan-pull-notice{position:fixed;top:calc(env(safe-area-inset-top,0px) + 12px);left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);padding:11px 18px;border:1px solid var(--line);border-radius:24px;background:var(--card);color:var(--ink);box-shadow:var(--shadow-lg);font:13px/1.7 inherit;z-index:10010;pointer-events:none}.plan-brief-transcribe{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
@media(prefers-reduced-motion:reduce){.plan-touch-lifted{animation:none}.is-list .plan-project>*,.is-list .plan-goal>*{transition:none}}

/* Official invoice controls share the existing document workflow. */
.plan-invoice-choice{display:grid;gap:12px}.plan-invoice-choice .btn{justify-content:center;min-height:48px}
.plan-official-party{border:1px solid var(--border);border-radius:12px;margin:12px 0;padding:12px}
.plan-official-party summary{font-size:14px;font-weight:650;cursor:pointer}.plan-official-party[open] summary{margin-bottom:14px}
.plan-official-total{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 0}.plan-official-total b{font-size:17px}
.plan-official-preview .pp-page{width:calc(1123px * var(--sc,1))}.plan-official-preview .pp-page iframe{width:1123px}
.plan-official-preview footer{grid-template-columns:1fr 1fr 2fr;gap:8px}.plan-official-preview footer button{font-size:13px}

.plan-health-edit-actions{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 12px}.plan-health-edit-actions .btn{font-size:13px;padding:7px 10px;min-height:36px}.plan-health-edit-actions svg{width:16px;height:16px}.plan-carb-budget-modal{max-width:440px}.plan-carb-budget-modal input,.plan-carb-budget-modal select{font-size:16px}

.plan-gear-add{display:grid!important;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px!important;align-items:end}.plan-gear-field{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:13px;color:var(--ink2)}.plan-gear-add input,.plan-gear-add select{width:100%!important;min-width:0!important;min-height:48px;font:inherit;font-size:16px!important;border:1px solid var(--line2);border-radius:12px;padding:10px 12px;background:var(--card);color:var(--ink)}.plan-gear-add>.btn{grid-column:1/-1;min-height:48px}.plan-gear-add>.plan-form-help{grid-column:1/-1;justify-self:start;min-height:36px}.plan-gear-new-card>.card-head{flex-direction:column;align-items:flex-start!important;gap:6px}.plan-gear-new-card .sub{white-space:normal;line-height:1.8}
@media(max-width:760px){.plan-gear-add{grid-template-columns:minmax(0,1fr)!important;gap:14px!important}.plan-gear-new-card{padding:14px!important}.plan-gear-add>.btn.primary{width:100%;font-size:14px!important}.plan-gear-add input::placeholder{font-size:13px}.plan-gear-new-card .card-head h2{margin:0}}

.plan-activity-schedule{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));gap:10px;padding:12px;border:1px solid var(--line2);border-radius:12px;margin:12px 0}.plan-activity-schedule>.field{min-width:0;margin:0}.plan-activity-schedule input{width:100%;min-width:0;box-sizing:border-box;font-size:16px!important;min-height:48px}.plan-activity-schedule label{font-size:12px}.plan-task.plan-item{position:relative;overflow:hidden;touch-action:pan-y}.plan-task.plan-item>*{transition:transform .18s ease}.plan-task.plan-swipe-open>:not(.plan-swipe-delete){transform:translateX(-82px)}.plan-task.plan-swipe-open>.plan-swipe-delete{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;top:0;bottom:0;right:0;width:74px;border:0;border-radius:0 10px 10px 0;background:#b44646;color:#fff;font:inherit;font-size:12px;z-index:4}
@media(max-width:480px){.plan-activity-schedule{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.plan-activity-schedule>.field:first-child{grid-column:1/-1}.plan-activity-schedule input{padding:9px 8px}}

/* Gram food entry: clear totals and comfortable touch targets. */
.plan-food-grams input,.plan-food-recipe-row input,.plan-food-recipe-row select{font-size:16px!important;min-height:44px}
.plan-food-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.plan-food-totals span{font-size:12px}.plan-food-totals b{font-size:20px}
.plan-food-source{margin:14px 0;color:var(--muted);font-size:13px}.plan-food-source summary{cursor:pointer;padding:8px 0}.plan-food-source p{margin:8px 0}
.plan-food-recipe-row{display:grid;grid-template-columns:minmax(0,1fr) 85px 38px;gap:8px;margin:8px 0}.plan-food-recipe-row select{width:100%;min-width:0}.plan-food-recipe-row input{width:100%;min-width:0}.plan-food-budget-note{padding:0 16px 10px;font-size:12px}
@media(max-width:540px){.plan-food-totals{gap:4px}.plan-food-totals span{font-size:11px}.plan-food-recipe-row{grid-template-columns:minmax(0,1fr) 65px 36px;gap:4px}.food-modal .fp-foot{flex-wrap:wrap}}

.plan-food-measure{display:grid;grid-template-columns:minmax(0,2fr) minmax(65px,1fr);gap:10px}.plan-food-measure .plan-food-unit-hint,.plan-food-measure .plan-food-unit-adjust,.plan-food-measure .plan-food-custom-unit{grid-column:1/-1}.plan-food-measure [hidden]{display:none!important}.plan-food-unit-adjust{font-size:13px;color:var(--muted);padding-bottom:8px}.plan-food-unit-adjust summary{padding:7px 0;cursor:pointer}.plan-food-unit-adjust input{width:100%;margin-top:7px}.plan-food-measure select{font-size:16px;min-height:44px;width:100%;min-width:0}
/* Keep health number fields at their rendered size while the iPhone keyboard opens. */
@media(max-width:760px),(pointer:coarse){
 #modalRoot .modal input[inputmode="decimal"],
 #modalRoot .modal input[inputmode="numeric"],
 #modalRoot .modal input[type="number"],
 #modalRoot .modal .plan-food-measure input,
 #modalRoot .modal .plan-food-measure select,
 #modalRoot .modal .plan-food-recipe-row input,
 #modalRoot .modal .plan-food-recipe-row select{font-size:16px!important;line-height:1.5;min-height:44px;max-width:100%;box-sizing:border-box}
 #modalRoot .modal:has([data-gram-food]),
 #modalRoot .modal:has([data-form="planFoodRecipe"]){animation:fade .15s!important;transform:none!important}
}

/* Full-app usability review: existing themes, actions, fields and workspaces. */
.plan-usability-ui{--plan-body-size:15px;--plan-caption-size:13px;--plan-title-size:23px}
.plan-usability-ui body{font-size:var(--plan-body-size);line-height:1.7}
.plan-usability-ui .main{max-width:1440px;padding-inline:28px!important}
.plan-usability-ui .sidebar{padding:26px 18px!important}
.plan-usability-ui .plan-sidebar .nav button{font-size:14px!important;min-height:44px;padding:10px 14px!important;border-radius:12px!important}
.plan-usability-ui .plan-sidebar .nav button.active{font-weight:700;border-inline-start:3px solid var(--primary);background:var(--s2)!important}
.plan-usability-ui .plan-sidebar .brand{margin-bottom:22px}
.plan-usability-ui .plan-topbar{min-height:60px;padding:10px 0!important;margin-bottom:16px!important;background:var(--bg)!important}
.plan-usability-ui .plan-topbar .btn{min-height:40px!important;font-size:14px!important;padding:8px 12px!important}
.plan-usability-ui [data-a="assist:open"]{display:inline-flex;align-items:center;justify-content:center;gap:7px;color:var(--ink)!important}
.plan-usability-ui .plan-assistant-label{font-size:13px;font-weight:600;white-space:nowrap}
.plan-usability-ui .plan-topbar [data-a="assist:open"]{border:1px solid var(--line)!important;background:var(--card)!important;border-radius:11px!important}
.plan-usability-ui .view h1,.plan-usability-ui .plan-start-greeting h1{font-size:var(--plan-title-size)!important;line-height:1.6!important;font-weight:700}
.plan-usability-ui .view h2,.plan-usability-ui .plan-fin-widget-title b{font-size:16px!important;line-height:1.65!important}
.plan-usability-ui .view h3{font-size:15px!important}
.plan-usability-ui .plan-item-main b{font-size:15px!important;line-height:1.7!important;font-weight:600}
.plan-usability-ui .plan-item-main small,.plan-usability-ui .plan-meta,.plan-usability-ui .plan-project-main small,.plan-usability-ui .plan-day-progress p,.plan-usability-ui .plan-hero-date,.plan-usability-ui .plan-activity-facts span{font-size:13px!important;line-height:1.6!important;color:var(--ink2)!important}
.plan-usability-ui .view .muted{font-size:13px!important;color:var(--ink2)!important;line-height:1.8}
.plan-usability-ui .btn{font-size:14px!important;min-height:40px;padding:8px 13px}
.plan-usability-ui :is(button,input,textarea,select):focus-visible{outline:2px solid var(--primary);outline-offset:3px}
.plan-usability-ui .plan-week-strip{gap:8px;margin-bottom:14px!important}
.plan-usability-ui .plan-week-strip>button{padding:9px 5px 7px;min-height:64px;border-radius:13px!important;box-shadow:none!important}
.plan-usability-ui .plan-week-strip small{font-size:12px!important;line-height:1.5}
.plan-usability-ui .plan-week-strip b{font-size:19px!important;line-height:1.5}
.plan-usability-ui .plan-week-strip .selected{border-color:var(--primary)!important}
.plan-usability-ui .plan-start-hero.plan-daily-reviews{padding:22px 22px 16px!important;background:var(--card)!important;border:1px solid var(--line)!important;border-radius:20px!important;box-shadow:none!important;margin-bottom:12px!important}
.plan-usability-ui .plan-start-hero::before{display:none}
.plan-usability-ui .plan-start-hero .plan-start-greeting{min-height:108px!important;gap:20px!important}
.plan-usability-ui .plan-start-greeting h1{margin:5px 0 8px!important}
.plan-usability-ui .plan-start-hero .plan-day-progress{flex:0 0 155px;width:155px!important}
.plan-usability-ui .plan-day-ring{width:96px!important;height:96px!important;margin-inline:auto}
.plan-usability-ui .plan-day-ring>span{font-size:23px!important}
.plan-usability-ui .plan-day-progress p{margin:6px 0 0!important}
.plan-usability-ui .plan-start-hero .plan-review-buttons{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:none;margin-top:14px!important;gap:8px!important}
.plan-usability-ui .plan-review-buttons>button{min-height:44px!important;padding:7px 10px!important;gap:8px!important;border:1px solid var(--line)!important;border-radius:11px!important;background:var(--bg)!important;color:var(--ink)!important;font-size:14px!important}
.plan-usability-ui .plan-review-buttons>button i{background:transparent!important;color:var(--primary)!important;width:23px!important;height:23px!important}
.plan-usability-ui .plan-review-buttons>button span{font-size:14px!important;font-weight:500}
.plan-usability-ui .plan-metrics-compact{gap:8px!important;margin:0 0 16px!important}
.plan-usability-ui .plan-metrics-compact>button{padding:9px 13px!important;min-height:54px!important;border:1px solid var(--line)!important;border-radius:13px!important;background:var(--card)!important;gap:10px!important}
.plan-usability-ui .plan-metrics-compact>button>i{width:29px!important;height:29px!important;background:transparent!important;color:var(--ink2)!important;border-radius:8px!important}
.plan-usability-ui .plan-metrics-compact>button span{display:flex!important;align-items:center;justify-content:space-between;flex:1;gap:8px}
.plan-usability-ui .plan-metrics-compact small{font-size:13px!important;color:var(--ink2)!important}
.plan-usability-ui .plan-metrics-compact b{font-size:15px!important;white-space:nowrap}
.plan-usability-ui .plan-home-grid{gap:18px!important;grid-template-columns:minmax(0,1fr) 290px}
.plan-usability-ui .plan-fin-widget{border-radius:16px!important;border-color:var(--line)!important;background:var(--card)!important;box-shadow:none!important}
.plan-usability-ui .plan-fin-widget-header{min-height:52px!important;padding:7px 10px!important;gap:6px!important;border-bottom-color:var(--line)!important;background:transparent!important}
.plan-usability-ui .plan-fin-widget-title{min-height:38px!important;gap:8px!important;padding:0 4px!important}
.plan-usability-ui .plan-fin-widget-title>i{width:26px!important;height:26px!important;background:transparent!important;color:var(--primary)!important}
.plan-usability-ui .plan-fin-widget-title>svg:last-child{width:14px;height:14px;opacity:.6}
.plan-usability-ui .plan-page-panel-grip,.plan-usability-ui .plan-fin-widget-grip{width:28px;min-width:28px;min-height:40px!important;opacity:.6;font-size:17px}
.plan-usability-ui .plan-fin-widget-options{min-height:40px!important;border:0!important;background:transparent!important;color:var(--ink2)!important}
.plan-usability-ui .plan-page-widget-body,.plan-usability-ui .plan-fin-widget-body{padding:12px 16px!important}
.plan-usability-ui .plan-section-head{margin-bottom:10px!important;gap:8px}
.plan-usability-ui .plan-task,.plan-usability-ui .plan-check-row{min-height:62px!important;padding:10px 8px!important;gap:9px!important;border-radius:11px!important;background:transparent!important;border-color:var(--line)!important}
.plan-usability-ui .plan-task:hover,.plan-usability-ui .plan-check-row:hover{background:var(--bg2)!important}
.plan-usability-ui .plan-task .check,.plan-usability-ui .plan-check-row .check{width:22px!important;height:22px!important;flex:none}
.plan-usability-ui .plan-task .check,.plan-usability-ui .plan-subactivity-row .check,.plan-usability-ui .plan-check-row .check{border:1.5px solid var(--ink2)!important;background:transparent!important}
.plan-usability-ui .plan-task .check:checked,.plan-usability-ui .plan-subactivity-row .check:checked,.plan-usability-ui .plan-check-row .check:checked{border-color:var(--primary)!important;background:var(--primary)!important}
.plan-usability-ui .plan-task .check:checked::after,.plan-usability-ui .plan-subactivity-row .check:checked::after,.plan-usability-ui .plan-check-row .check:checked::after{border-right-color:var(--on-primary)!important;border-bottom-color:var(--on-primary)!important}
.plan-usability-ui .plan-task .icon-btn,.plan-usability-ui .plan-check-row .icon-btn{min-width:40px!important;width:40px!important;height:40px!important;min-height:40px!important;color:var(--ink2)!important;opacity:1!important;background:transparent!important}
.plan-usability-ui .plan-grip{width:18px;min-width:18px;min-height:40px;opacity:.45!important}
.plan-usability-ui .plan-links button{font-size:12px!important;color:var(--ink2)!important;padding:5px 8px;border:1px solid var(--line);border-radius:7px}
.plan-usability-ui .plan-subactivities{margin:0 29px 12px 0!important;padding:4px 10px!important;border:0!important;border-inline-start:2px solid var(--line2)!important;border-radius:0!important;background:transparent!important}
.plan-usability-ui .plan-subactivities>summary{min-height:35px;gap:8px;font-size:13px!important;color:var(--ink2)!important}
.plan-usability-ui .plan-subactivities>summary small{font-size:12px!important;margin-inline-start:auto}
.plan-usability-ui .plan-subactivity-row{min-height:42px;padding:5px 0!important;gap:10px!important;border-bottom:1px solid var(--line)}
.plan-usability-ui .plan-subactivity-row b{font-size:14px!important;font-weight:500}
.plan-usability-ui .plan-subactivity-row small{font-size:12px!important;color:var(--ink2)!important}
.plan-usability-ui .plan-subactivity-edit{font-size:12px!important;color:var(--ink2)!important;min-height:34px!important;padding:4px 0!important}
.plan-usability-ui .plan-quick{padding:8px!important;gap:6px!important;background:var(--bg)!important;border:1px solid var(--line)!important;border-radius:12px!important;margin:0 0 12px!important}
.plan-usability-ui .plan-quick input{font-size:16px!important;min-height:42px!important;padding:6px 9px!important}
.plan-usability-ui .plan-quick>.icon-btn{width:42px!important;min-width:42px!important;min-height:42px!important}
.plan-usability-ui .plan-quick>.icon-btn:not([type]){background:var(--primary)!important;color:var(--on-primary)!important;border-radius:10px!important}
.plan-usability-ui .plan-day-filters{margin:15px 0 0!important;padding:7px 0 0!important;border-top:1px solid var(--line);gap:6px!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))}
.plan-usability-ui .plan-day-filters .btn{padding:7px 9px!important;border-radius:9px!important;min-height:40px!important;white-space:nowrap}
.plan-usability-ui .plan-day-filters .ghost{color:var(--ink2)!important;background:transparent!important}
.plan-usability-ui .plan-empty{padding:20px 10px!important}
.plan-usability-ui .plan-empty p{font-size:14px!important;color:var(--ink2)!important}
.plan-usability-ui .plan-project-grid,.plan-usability-ui .plan-goal-grid{gap:16px!important}
.plan-usability-ui .plan-project,.plan-usability-ui .plan-goal{border-radius:16px!important;box-shadow:none!important}
.plan-usability-ui .plan-project-main h2{font-size:17px!important}
.plan-usability-ui .plan-project-card-nav{gap:7px!important}
.plan-usability-ui .plan-project-card-nav .btn,.plan-usability-ui .plan-project-card-nav select{min-height:42px!important;font-size:14px!important}
.plan-usability-ui .view-project>.plan-project-navigation-card{position:sticky!important;top:69px;z-index:21;display:flex;flex-direction:row;align-items:center;margin:0 0 14px!important;padding:8px 10px!important;border:1px solid var(--line);border-radius:13px;background:var(--card);box-shadow:0 4px 14px color-mix(in srgb,var(--bg) 75%,transparent)}
.plan-usability-ui .plan-project-navigation-card .plan-work-tabs{flex:1;min-width:0}
.plan-usability-ui .modal-head{padding:18px 22px!important;min-height:64px!important;border-bottom:1px solid var(--line)!important}
.plan-usability-ui .modal-head h2{font-size:19px!important;font-weight:600}
.plan-usability-ui .modal-body{padding:20px 22px!important}
.plan-usability-ui .modal .field>label,.plan-usability-ui .plan-field-heading>label{font-size:14px!important;color:var(--ink)!important;margin:0;font-weight:500}
.plan-usability-ui .modal input:not([type=checkbox]):not([type=radio]),.plan-usability-ui .modal select,.plan-usability-ui .modal textarea{font-size:16px!important;min-height:44px!important;border-radius:10px!important}
.plan-usability-ui .plan-field-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}
.plan-usability-ui .plan-field-heading .plan-form-help{font-size:13px!important;min-height:34px!important;padding:3px 8px!important;margin:0!important;color:var(--primary)!important;background:transparent!important;border:0!important}
.plan-usability-ui .plan-activity-flow>.field:first-child{margin-bottom:12px!important}
.plan-usability-ui .plan-subtask-editor{margin:0 0 12px!important;padding:9px 12px!important;background:var(--bg)!important;border:1px solid var(--line)!important;border-radius:12px!important}
.plan-usability-ui .plan-subtask-editor>summary{min-height:32px;font-size:14px!important;color:var(--ink)!important}
.plan-usability-ui .plan-subtask-editor .plan-subdraft-add{margin-top:6px!important;gap:7px}
.plan-usability-ui .plan-subdraft-add input{padding:8px 10px!important;background:var(--card)!important}
.plan-usability-ui .plan-subdraft-add button{min-height:44px!important;min-width:44px!important}
.plan-usability-ui .plan-subdraft-row{margin:7px 0!important;padding:7px 0!important;border-bottom:1px solid var(--line)}
.plan-usability-ui .plan-subdraft-row>details>summary{font-size:12px!important;color:var(--ink2)!important;min-height:28px}
.plan-usability-ui .plan-activity-schedule{padding:10px!important;margin:0 0 12px!important;background:transparent!important;gap:10px}
.plan-usability-ui .plan-kind-picker{margin:0 0 12px!important;padding:4px!important;border:1px solid var(--line);border-radius:11px;background:var(--bg)!important;gap:4px}
.plan-usability-ui .plan-kind-picker label span{font-size:14px!important;min-height:40px;display:grid;place-items:center;padding:7px 10px!important;border-radius:8px!important}
.plan-usability-ui .plan-activity-flow>.form-grid{gap:10px!important;margin-bottom:12px!important}
.plan-usability-ui .plan-activity-flow>.form-grid:empty{display:none}
.plan-usability-ui .plan-activity-options{margin:0!important;border-top:1px solid var(--line);padding-top:8px}
.plan-usability-ui .plan-activity-options>summary{font-size:13px!important;min-height:38px;line-height:1.6;color:var(--ink2)!important}
.plan-usability-ui .modal .form-actions{position:sticky!important;bottom:-20px;background:var(--card)!important;z-index:2;margin-top:16px!important;padding:12px 0!important;border-top:1px solid var(--line)!important;gap:10px}
.plan-usability-ui .modal .form-actions .primary{min-height:44px!important;padding:9px 20px!important;font-weight:600}

.plan-usability-ui .set-nav button{min-height:48px!important;font-size:14px!important}
.plan-usability-ui .set-detail h1,.plan-usability-ui .set-detail h2{font-size:18px!important}
.plan-usability-ui .set-detail p,.plan-usability-ui .set-detail label,.plan-usability-ui .set-detail small{font-size:13px!important;line-height:1.8!important}
@media(min-width:1100px){
 .plan-usability-ui .modal.plan-activity-sheet{width:min(590px,calc(100vw - 48px))!important;max-width:590px!important}
}
@media(max-width:1000px){.plan-usability-ui .plan-home-grid{grid-template-columns:1fr!important}.plan-usability-ui .plan-home-side{display:grid;grid-template-columns:1fr 1fr;gap:14px}}
@media(max-width:760px){
 .plan-usability-ui{--plan-body-size:15px;--plan-title-size:21px}
 .plan-usability-ui .main{padding:0 16px calc(94px + env(safe-area-inset-bottom))!important}
 .plan-usability-ui .m-bar{padding-top:calc(10px + env(safe-area-inset-top))!important;min-height:64px!important;background:var(--bg)!important;border-bottom:1px solid var(--line)!important}
 .plan-usability-ui .m-bar-side [data-a="assist:open"]{width:auto!important;min-width:72px!important;padding:7px 9px!important;min-height:42px!important;border:1px solid var(--line);border-radius:11px;background:var(--card)}
 .plan-usability-ui .m-bar-side [data-a="assist:open"] .ic{width:17px!important;height:17px!important}
 .plan-usability-ui .m-bar-side{gap:5px!important}
 .plan-usability-ui .m-bar-side .plan-assistant-label{font-size:12px!important}
 .plan-usability-ui .plan-topbar{display:none!important}
 .plan-usability-ui .plan-week-strip{gap:5px!important;margin:10px 0 12px!important}
 .plan-usability-ui .plan-week-strip>button{min-height:60px!important;padding:8px 2px!important;border-radius:10px!important}
 .plan-usability-ui .plan-week-strip small{font-size:10px!important;white-space:nowrap}
 .plan-usability-ui .plan-week-strip b{font-size:18px!important}
 .plan-usability-ui .plan-start-hero.plan-daily-reviews{padding:18px 15px 13px!important;border-radius:17px!important;margin:0 0 12px!important}
 .plan-usability-ui .plan-start-hero .plan-start-greeting{gap:10px!important;min-height:105px!important;align-items:center!important}
 .plan-usability-ui .plan-start-hero .plan-start-greeting>div:first-child{min-width:0;flex:1}
 .plan-usability-ui .plan-start-hero .plan-day-progress{width:122px!important;flex:0 0 122px!important}
 .plan-usability-ui .plan-day-ring{width:88px!important;height:88px!important}
 .plan-usability-ui .plan-day-ring>span{font-size:22px!important}
 .plan-usability-ui .plan-day-progress p{font-size:11px!important;line-height:1.6!important}
 .plan-usability-ui .plan-hero-date{font-size:11px!important;line-height:1.7!important}
 .plan-usability-ui .plan-start-hero .plan-review-buttons{gap:5px!important;margin-top:13px!important}
 .plan-usability-ui .plan-review-buttons>button{flex-direction:column!important;gap:2px!important;padding:6px 2px!important;min-height:60px!important;border-radius:9px!important}
 .plan-usability-ui .plan-review-buttons>button i{width:21px!important;height:21px!important}
 .plan-usability-ui .plan-review-buttons>button span{font-size:12px!important;white-space:nowrap}
 .plan-usability-ui .plan-metrics-compact{margin-bottom:13px!important;gap:5px!important}
 .plan-usability-ui .plan-metrics-compact>button{padding:7px 6px!important;gap:4px!important;min-height:53px!important}
 .plan-usability-ui .plan-metrics-compact>button>i{display:none!important}
 .plan-usability-ui .plan-metrics-compact>button span{flex-direction:column;align-items:center;gap:1px}
 .plan-usability-ui .plan-metrics-compact small{font-size:11px!important;white-space:nowrap}
 .plan-usability-ui .plan-metrics-compact b{font-size:14px!important}
 .plan-usability-ui .plan-page-widget-body,.plan-usability-ui .plan-fin-widget-body{padding:10px 12px!important}
 .plan-usability-ui .plan-fin-widget-header{padding:5px 7px!important;min-height:50px!important}
 .plan-usability-ui .plan-fin-widget-title b{font-size:15px!important}
 .plan-usability-ui .plan-fin-widget-title>i{width:22px!important;height:22px!important}
 .plan-usability-ui .plan-task,.plan-usability-ui .plan-check-row{gap:7px!important;padding:8px 0!important;min-height:60px!important}
 .plan-usability-ui .plan-task .plan-grip{width:12px;min-width:12px}
 .plan-usability-ui .plan-task .icon-btn{width:36px!important;min-width:36px!important;height:44px!important;min-height:44px!important}
 .plan-usability-ui .plan-item-main b{font-size:15px!important}
 .plan-usability-ui .plan-item-main small{font-size:12px!important}
 .plan-usability-ui .plan-subactivities{margin-inline-start:23px!important;margin-inline-end:0!important;padding-inline:9px!important}
 .plan-usability-ui .plan-day-filters{gap:4px!important;padding-top:10px!important;margin-top:12px!important}
 .plan-usability-ui .plan-day-filters .btn{font-size:12px!important;padding:6px 3px!important;min-height:42px!important}
 .plan-usability-ui .plan-activity-facts{flex-direction:row!important;gap:6px 12px!important}
 .plan-usability-ui .plan-activity-facts span{font-size:12px!important}
 .plan-usability-ui .plan-home-side{display:block!important}
 .plan-usability-ui .modal-head{padding:16px!important}
 .plan-usability-ui .modal-body{padding:16px!important}
 .plan-usability-ui .modal .form-actions{bottom:-16px}
 .plan-usability-ui .modal input:not([type=checkbox]):not([type=radio]),.plan-usability-ui .modal select,.plan-usability-ui .modal textarea{font-size:16px!important}
 .plan-usability-ui .plan-activity-schedule{grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr))!important;gap:6px!important;padding:9px!important}
 .plan-usability-ui .plan-activity-schedule>.field:first-child{grid-column:auto!important}
 .plan-usability-ui .plan-activity-schedule input{padding:8px 5px!important;min-width:0}
 .plan-usability-ui .plan-activity-schedule .date-in{min-width:0;gap:0!important}
 .plan-usability-ui .plan-activity-schedule .date-in .icon-btn{min-width:28px;width:28px;padding:3px!important}
 .plan-usability-ui .plan-activity-schedule>.field>label{font-size:12px!important}
 .plan-usability-ui .plan-project-card-nav .btn,.plan-usability-ui .plan-project-card-nav select{font-size:13px!important;min-height:44px!important}
 .plan-usability-ui .view-project>.plan-project-navigation-card{top:calc(64px + env(safe-area-inset-top));padding:6px!important;flex-wrap:nowrap;gap:4px!important}
 .plan-usability-ui .plan-project-navigation-card>.plan-back{position:static;min-height:44px;width:30px;flex:0 0 30px;margin:0!important;padding:4px!important;font-size:12px;display:grid;place-items:center;align-self:center}
 .plan-usability-ui .plan-project-back-label{display:none}
 .plan-usability-ui .plan-project-navigation-card .plan-project-four-tabs{display:grid!important;grid-template-columns:1fr .7fr 1.2fr 1.2fr;gap:4px!important}
 .plan-usability-ui .plan-project-navigation-card .plan-project-four-tabs .btn,.plan-usability-ui .plan-project-navigation-card .plan-project-phase-select{width:100%!important;min-width:0!important;min-height:44px!important;padding:6px 3px!important;font-size:12px!important;white-space:normal;line-height:1.5!important}
}
@media(max-width:380px){
 .plan-usability-ui .main{padding-inline:12px!important}
 .plan-usability-ui .plan-start-hero .plan-day-progress{flex-basis:105px!important;width:105px!important}
 .plan-usability-ui .plan-review-buttons>button span{font-size:11px!important}
 .plan-usability-ui .plan-activity-schedule{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .plan-usability-ui .plan-activity-schedule>.field:first-child{grid-column:1/-1!important}
}
.plan-usability-ui .plan-inline-section-tools{display:flex;align-items:center;gap:4px;flex:none}
.plan-usability-ui .plan-inline-section-tools button{min-height:40px!important;min-width:36px!important;padding:5px 7px!important;font-size:12px!important;background:transparent!important}
.plan-usability-ui .plan-section-tools-moved{margin:0!important;min-height:0!important}
.plan-usability-ui .plan-section-tools-moved>div:not(:has(.plan-day-intention)),.plan-usability-ui .plan-section-tools-moved>h2,.plan-usability-ui .plan-section-tools-moved>.btn-row{display:none!important}
.plan-usability-ui .plan-section-tools-moved .plan-day-intention{display:block;margin:0 0 10px;font-size:13px!important}
.plan-usability-ui .plan-week-strip>button{height:64px!important;min-height:64px!important;gap:4px!important}
.plan-usability-ui .plan-week-strip>button b{line-height:1.2!important}
.plan-usability-ui .plan-week-strip>button small{line-height:1.4!important;flex:none}
@media(max-width:760px){
 .plan-usability-ui .m-bar-title{display:flex!important;align-items:center;justify-content:center;min-width:0;flex:1;padding-inline:6px!important}
 .plan-usability-ui .m-bar-title>.m-seg{position:static!important;top:auto!important;margin:0!important;transform:none!important;width:auto!important;min-width:0;max-width:190px;gap:3px!important;background:var(--card)!important;padding:3px!important;border:1px solid var(--line);border-radius:10px!important}
 .plan-usability-ui .m-bar-title>.m-seg button{font-size:11px!important;white-space:nowrap;padding:5px 6px!important;min-height:34px!important;min-width:0;line-height:1.5!important;border-radius:7px!important}
 .plan-usability-ui .plan-week-strip>button{height:62px!important;min-height:62px!important;gap:3px!important;padding:6px 2px!important}
 .plan-usability-ui .plan-week-strip>button small{margin:0 0 2px!important}
 .plan-usability-ui .plan-week-strip>button i{margin-top:4px!important}
 .plan-usability-ui .plan-inline-section-tools{gap:1px!important}
 .plan-usability-ui .plan-inline-section-tools button{min-height:44px!important;padding:4px 5px!important}
 .plan-usability-ui .plan-fin-widget-title b{white-space:normal}
}
@media(max-width:380px){.plan-usability-ui .m-bar-title>.m-seg button{font-size:10px!important;padding-inline:3px!important}.plan-usability-ui .m-bar-side [data-a="assist:open"]{min-width:62px!important;padding-inline:5px!important}}
@media(prefers-reduced-motion:reduce){.plan-usability-ui *, .plan-usability-ui *::before,.plan-usability-ui *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Reference-led entry sheets: short rows, optional controls open in place. */
.plan-usability-ui .plan-goal-search{display:flex;align-items:center;gap:10px;padding:0 12px;margin-bottom:14px;border:1px solid var(--line);border-radius:12px;background:var(--card);min-height:48px}
.plan-usability-ui .plan-goal-search input{flex:1;width:100%;border:0!important;background:transparent!important;font-size:16px!important;outline:none;min-height:46px}
.plan-usability-ui .plan-goal-reference .plan-goal{padding:14px!important;border:1px solid var(--line)!important;border-radius:14px!important;position:relative;display:block!important}
.plan-usability-ui .plan-goal-reference .plan-goal[hidden]{display:none!important}
.plan-usability-ui .plan-goal-reference .plan-goal{overflow:hidden;touch-action:pan-y}
.plan-usability-ui .plan-goal-reference .plan-goal>:not(.plan-swipe-delete){transition:transform .18s ease}
.plan-usability-ui .plan-goal-reference .plan-goal.plan-swipe-open>:not(.plan-swipe-delete){transform:translateX(-82px)}
.plan-usability-ui .plan-goal-reference .plan-goal.plan-swipe-open>.plan-swipe-delete{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;top:0;bottom:0;right:0;width:74px;border:0;border-radius:0 12px 12px 0;background:#b44646;color:white;z-index:4}
.plan-usability-ui .plan-goal-reference-main{display:block;width:100%;padding:0!important;text-align:start;border:0;background:transparent;color:var(--ink);cursor:pointer}
.plan-usability-ui .plan-goal-reference-heading{display:flex;gap:12px;align-items:flex-start}
.plan-usability-ui .plan-goal-reference-heading>div{flex:1;min-width:0}
.plan-usability-ui .plan-goal-reference-heading h2{font-size:17px!important;line-height:1.7!important;margin:0 0 4px!important;font-weight:600}
.plan-usability-ui .plan-goal-reference-heading p{font-size:14px!important;line-height:1.8!important;margin:0!important;color:var(--ink2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.plan-usability-ui .plan-goal-thumbnail{width:52px;min-width:52px;height:52px;border-radius:11px;overflow:hidden;background:var(--bg);color:var(--primary);display:grid;place-items:center}
.plan-usability-ui .plan-goal-thumbnail img{width:100%!important;height:100%!important;min-height:0!important;margin:0!important;object-fit:cover;border-radius:0!important}
.plan-usability-ui .plan-goal-thumbnail>.ic{width:26px;height:26px}
.plan-usability-ui .plan-goal-reference .plan-card-top{margin:0 0 6px!important;min-height:24px;gap:8px}
.plan-usability-ui .plan-goal-reference .plan-card-top>.icon-btn{width:32px!important;min-height:32px!important;height:32px!important;color:var(--ink2)}
.plan-usability-ui .plan-goal-reference-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:12px 0 9px;color:var(--ink2);font-size:12px}
.plan-usability-ui .plan-goal-reference-meta span{display:flex;align-items:center;gap:5px}
.plan-usability-ui .plan-goal-reference-meta .ic{width:16px;height:16px}
.plan-usability-ui .plan-goal-reference-meta time{margin-inline-start:auto}
.plan-usability-ui .plan-goal-reference-meta time.overdue{color:var(--danger,#b43d3d)}
.plan-usability-ui .plan-goal-reference-track{display:flex;align-items:center;gap:8px}
.plan-usability-ui .plan-goal-reference-track .plan-progress{flex:1;margin:0!important;height:5px!important}
.plan-usability-ui .plan-goal-reference-track>.btn{font-size:12px!important;padding:3px 5px!important;min-height:32px!important;color:var(--ink2)}
.plan-usability-ui .plan-goal-reference-numbers{display:flex;justify-content:space-between;font-size:12px;line-height:1.8;color:var(--ink2);margin-top:4px}
.plan-usability-ui .plan-goal-scopes{gap:8px;margin-bottom:12px!important}
.plan-usability-ui .plan-goal-scopes>.btn{min-height:44px!important;font-size:15px!important;border-radius:11px!important}
.plan-usability-ui .view>.plan-goal-library-header.plan-navigation-header{align-items:center!important;gap:8px!important;min-height:52px!important;margin-bottom:12px!important;padding:0 0 8px!important}
.plan-usability-ui .plan-goal-library-header>.plan-goal-scopes{width:100%;max-width:340px;flex:1;min-width:0;margin:0 auto!important;padding:3px;gap:4px}
.plan-usability-ui .plan-goal-library-header .plan-goal-scopes>.btn{min-width:0;padding:7px 12px!important;min-height:40px!important;white-space:nowrap}
.plan-usability-ui .plan-goal-header-spacer{width:44px;flex:0 0 44px}
.plan-usability-ui .plan-goal-overview .plan-overview-heading{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;align-items:center}
.plan-usability-ui .plan-goal-overview .plan-overview-heading>h1{grid-column:1;grid-row:1}
.plan-usability-ui .plan-goal-overview .plan-overview-actions{grid-column:1;grid-row:3;display:flex;gap:8px;margin:0!important}
.plan-usability-ui .plan-goal-overview .plan-overview-actions button{width:42px!important;height:42px!important;min-height:42px!important;padding:8px!important}
.plan-usability-ui .plan-goal-view-menu{grid-column:2;grid-row:1;position:relative;border:0;background:transparent;margin:0;overflow:visible!important}
.plan-usability-ui .plan-goal-view-menu>summary{padding:8px!important;width:40px!important;height:40px!important;min-height:40px!important;border:1px solid var(--line);border-radius:50%;justify-content:center;box-sizing:border-box}
.plan-usability-ui .plan-goal-view-menu>.plan-entry-body{position:absolute;top:48px;left:0;width:min(330px,calc(100vw - 42px));padding:12px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 28px #0003;z-index:30}
.plan-usability-ui .plan-goal-view-menu .plan-toolbar{margin:0!important;flex-wrap:wrap}
@media(max-width:760px){.plan-usability-ui .plan-goal-overview .plan-overview-heading{grid-template-columns:minmax(0,1fr) auto auto}.plan-usability-ui .plan-goal-overview .plan-overview-actions{grid-column:2;grid-row:1}.plan-usability-ui .plan-goal-view-menu{grid-column:3;grid-row:1}.plan-usability-ui .plan-goal-overview .plan-start-greeting>div{width:100%}.plan-usability-ui .plan-goal-overview .plan-overview-heading>h1{font-size:20px!important;margin:0!important}.plan-usability-ui .plan-goal-overview .plan-overview-heading>.plan-activity-facts{display:none!important}}
.plan-usability-ui .plan-goal-context-preview .plan-goal{border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--bg);margin-bottom:16px}
.plan-usability-ui .plan-goal-context-preview .plan-card-top,.plan-usability-ui .plan-goal-context-preview .plan-swipe-delete{display:none!important}
.plan-usability-ui .plan-goal-context .btn-col{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.plan-usability-ui .plan-goal-context .btn-col>.btn{min-height:44px;font-size:14px!important;justify-content:center}
@media(max-width:760px){.plan-usability-ui .plan-goal-reference{grid-template-columns:1fr!important;gap:12px!important}.plan-usability-ui .plan-goal-overview .plan-day-progress{display:none!important}.plan-usability-ui .plan-goal-overview .plan-start-greeting{min-height:0!important}.plan-usability-ui .plan-goal-overview .plan-activity-facts{display:none!important}.plan-usability-ui .plan-goal-overview{padding:14px!important}.plan-usability-ui .plan-goal-reference .plan-goal{padding:12px!important}.plan-usability-ui .plan-goal-reference-heading h2{font-size:17px!important}}
.plan-usability-ui textarea,.plan-usability-ui .modal textarea{min-height:44px!important;max-height:none!important;line-height:1.6!important;padding:8px 12px!important;box-sizing:border-box!important;overflow-y:hidden!important;resize:none!important;font-size:16px!important}
.plan-usability-ui .modal.plan-reference-sheet{width:min(560px,calc(100vw - 32px))!important;max-width:560px!important;padding:0!important}
.plan-usability-ui .plan-reference-sheet .modal-head{display:grid!important;grid-template-columns:42px 1fr 42px;gap:8px;align-items:center;position:sticky;top:0;background:var(--card);z-index:4}
.plan-usability-ui .plan-reference-sheet .modal-head>div{grid-column:2;grid-row:1;text-align:center}
.plan-usability-ui .plan-reference-sheet .modal-head>h2{grid-column:2;grid-row:1}
.plan-usability-ui .plan-activity-flow>.field:first-child{margin-bottom:12px!important}
.plan-usability-ui .plan-entry-row:not([open])>.plan-entry-body{display:none!important}
.plan-usability-ui .plan-reference-sheet .modal-head h2{font-size:19px!important;text-align:center;justify-content:center!important}
.plan-usability-ui .plan-sheet-back{grid-column:1;grid-row:1;border:1px solid var(--line)!important;border-radius:50%!important;width:40px!important;height:40px!important}
.plan-usability-ui .plan-sheet-assistant{grid-column:3;grid-row:1;color:var(--primary)!important;border:1px solid var(--line)!important;border-radius:50%!important;width:40px!important;height:40px!important}
.plan-usability-ui .plan-activity-flow>.field:first-child .plan-field-heading,.plan-usability-ui .plan-entry-note>label{display:none!important}
.plan-usability-ui .plan-activity-flow>.field:first-child input,.plan-usability-ui .plan-entry-note textarea{background:var(--bg)!important;min-height:48px!important;border-radius:12px!important}
.plan-usability-ui .plan-entry-note{margin:0 0 12px!important}
.plan-usability-ui .plan-entry-row{border:1px solid var(--line);border-radius:12px;margin:0 0 10px;background:var(--bg);overflow:hidden}
.plan-usability-ui .plan-entry-row>summary{display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 12px;font-size:15px;list-style:none;cursor:pointer}
.plan-usability-ui .plan-entry-row>summary::-webkit-details-marker{display:none}
.plan-usability-ui .plan-entry-row>summary>span{flex:1;white-space:nowrap}
.plan-usability-ui .plan-entry-value{font-size:13px;color:var(--ink2);max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.plan-usability-ui .plan-entry-row>summary>i{display:grid;place-items:center;color:var(--ink2)}
.plan-usability-ui .plan-entry-row[open]>summary>i{transform:rotate(45deg)}
.plan-usability-ui .plan-entry-body{padding:0 12px 12px;display:grid;gap:10px}
.plan-usability-ui .plan-entry-body>.field{margin:0!important;width:100%;min-width:0}
.plan-usability-ui .plan-entry-body label{display:block;margin-bottom:6px!important}
.plan-usability-ui .plan-entry-body input,.plan-usability-ui .plan-entry-body select,.plan-usability-ui .plan-entry-body textarea{background:var(--card)!important}
.plan-usability-ui .plan-goal-entry-form>.field{margin-bottom:14px!important}
.plan-usability-ui .plan-goal-entry-form .plan-entry-body .form-grid{grid-template-columns:1fr!important;gap:12px!important}
.plan-usability-ui .plan-goal-entry-form .plan-entry-body .form-section{padding:0!important;margin:0!important;border:0!important}
.plan-usability-ui .plan-goal-entry-form .plan-entry-body .form-section>h3{display:none!important}
.plan-usability-ui .plan-goal-entry-form .plan-auto-image{margin:0!important;font-size:13px!important}
.plan-usability-ui .plan-entry-row[data-entry=time] .plan-entry-body{grid-template-columns:1fr 1fr}
.plan-usability-ui .plan-entry-row .plan-routine-fields[hidden],.plan-usability-ui .plan-entry-row .plan-project-fields[hidden]{display:none!important}
.plan-usability-ui .plan-entry-switch{display:flex!important;align-items:center;min-height:48px;gap:12px;margin:0 0 10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
.plan-usability-ui .plan-entry-switch .plan-switch-label{flex:1;font-size:14px;background:none!important;border-radius:0!important;position:static!important;width:auto!important;height:auto!important}
.plan-usability-ui .plan-entry-switch .plan-switch-label:after{display:none!important}
.plan-usability-ui .plan-entry-connections>.muted{font-size:12px!important;margin:6px 0 12px}
.plan-usability-ui .plan-reference-sheet .form-actions>.primary{flex:1;justify-content:center;min-height:48px!important;border-radius:12px!important}
.plan-usability-ui .plan-review-form>.form-grid{display:flex!important;flex-direction:column;gap:18px!important}
.plan-usability-ui .plan-review-form .field{width:100%;margin:0!important}
.plan-usability-ui .plan-review-form .field>label{font-size:15px!important;margin-bottom:8px!important}
.plan-usability-ui .plan-review-form textarea{border-radius:12px!important;background:var(--bg)!important}
.plan-usability-ui .plan-review-intro{font-size:14px;line-height:1.9;margin:0 0 22px;color:var(--ink2)}
.plan-usability-ui .plan-review-prompts{border-top:1px solid var(--line);padding-top:18px;margin-top:22px;display:grid;gap:18px}
.plan-usability-ui .plan-review-prompts>p{font-size:14px;line-height:1.9;color:var(--ink2);margin:0}
.plan-usability-ui .plan-review-add-question{width:100%;min-height:44px;justify-content:center;border:1px solid var(--line)!important;border-radius:12px!important}
.plan-usability-ui .plan-review-question-draft{display:flex;gap:8px}.plan-usability-ui .plan-review-question-draft input{flex:1;min-width:0}.plan-usability-ui .plan-review-question-draft button{min-width:44px}
.plan-usability-ui .plan-review-form>.form-section{margin-top:22px!important;border-top:1px solid var(--line);padding-top:18px!important}
.plan-usability-ui .plan-review-form .plan-day-quote{margin:20px 0 0!important;font-family:inherit!important;font-size:16px!important;line-height:1.9!important}
/* The activity entry pattern extends to the original project, finance,
   health, journal and settings controls without changing their handlers. */
.plan-usability-ui .plan-unified-form>.form-grid,.plan-usability-ui .plan-unified-form .form-grid:not(.plan-food-measure){display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
.plan-usability-ui .plan-unified-form .form-grid>.full{grid-column:auto!important}
.plan-usability-ui .plan-unified-form .field{min-width:0;margin-bottom:10px!important}
.plan-usability-ui .plan-unified-form .field>label,.plan-usability-ui .plan-unified-form .plan-field-heading>label{font-size:15px!important;line-height:1.7!important;margin-bottom:7px!important}
.plan-usability-ui .plan-unified-form input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]):not([type=file]),.plan-usability-ui .plan-unified-form select{min-height:48px!important;font-size:16px!important;border-radius:12px!important;background:var(--bg);max-width:100%;box-sizing:border-box}
.plan-usability-ui .plan-unified-form>.plan-entry-row,.plan-usability-ui .plan-unified-form .form-grid>.plan-entry-row{width:100%;margin-bottom:10px!important;box-sizing:border-box}
.plan-usability-ui .plan-unified-form .plan-entry-body>.field,.plan-usability-ui .plan-unified-form .plan-entry-group>.field{margin-bottom:0!important}
.plan-usability-ui .plan-entry-group{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0}
.plan-usability-ui .plan-unified-form .plan-entry-group>.full{grid-column:auto!important}
.plan-usability-ui .plan-unified-form .plan-entry-row[hidden]{display:none!important}
.plan-usability-ui .plan-unified-form .plan-entry-value{font-size:13px!important;line-height:1.6!important;color:var(--ink2)}
.plan-usability-ui .plan-unified-form .plan-entry-body .pf-panel,.plan-usability-ui .plan-unified-form .plan-entry-body>.form-section{border:0!important;padding:0!important;margin:0!important}
.plan-usability-ui .plan-unified-form .plan-entry-body .pf-panel>header{margin-bottom:12px}
.plan-usability-ui .plan-unified-form .plan-entry-body .pf-panel>header h3{font-size:16px!important}
.plan-usability-ui .plan-unified-form .plan-existing-entry{padding:0!important}
.plan-usability-ui .plan-unified-form .plan-existing-entry>summary{margin:0!important;font-size:15px!important}
.plan-usability-ui .plan-unified-form .plan-existing-entry>.form-grid,.plan-usability-ui .plan-unified-form .plan-existing-entry>.field,.plan-usability-ui .plan-unified-form .plan-existing-entry>.plan-fin-tags{margin:0 12px 12px!important}
.plan-usability-ui .plan-unified-form .plan-tx-main-fields{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px}
.plan-usability-ui .plan-unified-form .amount-field{margin-bottom:16px!important}
.plan-usability-ui .plan-unified-form .plan-entry-submit{flex:1;justify-content:center;min-height:48px!important;font-size:15px!important;border-radius:12px!important}
.plan-usability-ui .plan-unified-form .pay-row label{position:relative}
.plan-usability-ui .plan-unified-form .pay-row input[type=radio]{inset:0;margin:0;width:100%;height:100%;opacity:0;cursor:pointer}
.plan-usability-ui .plan-unified-form .plan-form-help{min-height:40px!important;font-size:13px!important}
.plan-usability-ui .plan-invoice-line-field{min-width:0;display:block}
.plan-usability-ui .plan-invoice-line-field>span{display:none}
.plan-usability-ui .plan-invoice-line-field>input{width:100%;box-sizing:border-box}
.plan-usability-ui .plan-unified-dialog .modal-head h2{font-size:19px!important;line-height:1.6!important}
.plan-usability-ui .plan-unified-dialog:not(.plan-reference-sheet)>.modal-head{display:grid!important;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;gap:8px}
.plan-usability-ui .plan-unified-dialog:not(.plan-reference-sheet)>.modal-head>div,.plan-usability-ui .plan-unified-dialog:not(.plan-reference-sheet)>.modal-head>h2{grid-column:2;grid-row:1;text-align:center;min-width:0}
.plan-usability-ui .plan-unified-dialog:not(.plan-reference-sheet)>.modal-head h2{justify-content:center!important;text-align:center!important}
.plan-usability-ui .plan-unified-dialog .modal-head>button.plan-sheet-back{grid-column:1;grid-row:1}
.plan-usability-ui .plan-unified-dialog .modal-head p{font-size:12px!important;line-height:1.7!important}
.plan-usability-ui .plan-unified-form .hint,.plan-usability-ui .plan-unified-form .muted{font-size:13px!important;line-height:1.8!important}
.plan-usability-ui .plan-unified-form .seg,.plan-usability-ui .plan-unified-form .tx-types{flex-wrap:wrap;gap:6px}
.plan-usability-ui .plan-unified-form .seg label,.plan-usability-ui .plan-unified-form .tx-types label{min-height:44px;min-width:0}
.plan-usability-ui .brand-form.plan-unified-form{display:block!important}
.plan-usability-ui .brand-form.plan-unified-form .brand-logo{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0!important}
.plan-usability-ui .brand-form.plan-unified-form .brand-logo>img,.plan-usability-ui .brand-form.plan-unified-form .brand-logo>span{width:72px!important;height:72px!important}
.plan-usability-ui .plan-compact-overview .plan-overview-heading{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;align-items:center}
.plan-usability-ui .plan-compact-overview .plan-overview-heading>h1{grid-column:1;grid-row:1;margin:0!important}
.plan-usability-ui .plan-compact-overview .plan-overview-actions{grid-column:1;grid-row:3;margin:0!important;gap:8px}
.plan-usability-ui .plan-compact-overview .plan-overview-actions button{width:42px!important;min-height:42px!important;height:42px!important;padding:8px!important}
@media(max-width:760px){
 .plan-usability-ui .plan-compact-overview{padding:14px!important}
 .plan-usability-ui .plan-compact-overview .plan-start-greeting{min-height:0!important}
 .plan-usability-ui .plan-compact-overview .plan-start-greeting>div{width:100%}
 .plan-usability-ui .plan-compact-overview .plan-overview-heading{grid-template-columns:minmax(0,1fr) auto auto}
 .plan-usability-ui .plan-compact-overview .plan-overview-heading>h1{font-size:20px!important}
 .plan-usability-ui .plan-compact-overview .plan-overview-actions{grid-column:2;grid-row:1}
 .plan-usability-ui .plan-compact-overview .plan-goal-view-menu{grid-column:3;grid-row:1}
 .plan-usability-ui .plan-compact-overview .plan-day-progress,.plan-usability-ui .plan-compact-overview .plan-activity-facts{display:none!important}
 .plan-usability-ui .plan-unified-form .pf-cols{grid-template-columns:minmax(0,1fr)!important}
 .plan-usability-ui .plan-unified-form .pf-cols h4{font-size:15px!important}
 .plan-usability-ui .plan-unified-form .module-grid,.plan-usability-ui .plan-unified-form .wk-grid,.plan-usability-ui .plan-unified-form .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .plan-usability-ui .plan-unified-form .form-actions{flex-wrap:wrap;gap:8px!important}
 .plan-usability-ui .plan-unified-form .form-actions>.danger,.plan-usability-ui .plan-unified-form .form-actions>[data-a^="print:"]{font-size:13px!important;min-height:44px!important}
 .plan-usability-ui .plan-unified-invoice .inv-head{display:none}
 .plan-usability-ui .plan-unified-invoice .inv-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;padding:12px!important;border:1px solid var(--line);border-radius:12px;margin-bottom:10px}
 .plan-usability-ui .plan-unified-invoice .inv-row>[data-invoice-field=i_title]{grid-column:1/-1}
 .plan-usability-ui .plan-invoice-line-field>span{display:block;font-size:13px!important;color:var(--ink2);margin-bottom:4px}
 .plan-usability-ui .plan-unified-invoice .inv-row>button{min-height:44px!important}
 .plan-usability-ui .plan-unified-invoice .form-actions{display:flex!important;flex-wrap:wrap!important;white-space:normal!important}
 .plan-usability-ui .plan-unified-invoice .form-actions>.muted{flex:1 0 100%;white-space:normal!important}
 .plan-usability-ui .plan-unified-invoice .form-actions>.plan-entry-submit{min-width:140px;flex:1;white-space:normal!important}
 .plan-usability-ui .plan-unified-invoice .form-actions>.grow{display:none}
}
@media(max-width:760px){
 .plan-usability-ui .plan-goal-reference .plan-card-top{position:absolute;top:10px;left:10px;display:flex;align-items:center;padding:0!important;margin:0!important;min-height:36px;height:36px;gap:4px;flex-wrap:nowrap}
 .plan-usability-ui .plan-goal-reference .plan-card-top>.plan-grip,.plan-usability-ui .plan-goal-reference .plan-card-top>.grow{display:none!important}
 .plan-usability-ui .plan-goal-reference .plan-card-top>.icon-btn{width:36px!important;min-height:36px!important;height:36px!important}
 .plan-usability-ui .plan-goal-reference-heading{padding-inline-end:68px}
 .plan-usability-ui .plan-goal-reference-heading h2{line-height:1.5!important}
 .plan-usability-ui .plan-goal-reference-heading p{-webkit-line-clamp:1;line-height:1.6!important}
 .plan-usability-ui .plan-goal-reference-meta{margin:10px 0 4px;line-height:1.5!important;gap:8px}
 .plan-usability-ui .plan-goal-reference-meta span,.plan-usability-ui .plan-goal-reference-meta time,.plan-usability-ui .plan-goal-reference-numbers span{font-size:12px!important;line-height:1.6!important}
}
@media(max-width:760px){
 .plan-usability-ui .plan-reference-backdrop{padding:0!important;align-items:stretch!important}
 .plan-usability-ui .modal.plan-reference-sheet{width:100%!important;max-width:none!important;height:var(--plan-visible-height,100dvh)!important;max-height:var(--plan-visible-height,100dvh)!important;margin:0!important;border-radius:0!important;display:flex!important;flex-direction:column}
 .plan-usability-ui .plan-reference-sheet .modal-head{padding-top:calc(16px + var(--plan-safe-top,env(safe-area-inset-top)))!important;flex:0 0 auto}
 .plan-usability-ui .plan-reference-sheet .modal-body{flex:1;min-height:0;overflow-y:auto!important;padding-bottom:calc(16px + env(safe-area-inset-bottom))!important}
 .plan-usability-ui .modal.plan-reference-sheet{border:0!important}
 .plan-usability-ui .plan-reference-sheet .modal-body{scrollbar-width:none}
 .plan-usability-ui .plan-reference-sheet .modal-body::-webkit-scrollbar{width:0;height:0}
 .plan-usability-ui .plan-reference-sheet .modal-body>form{display:flex!important;flex-direction:column;min-height:100%;box-sizing:border-box}
 .plan-usability-ui .plan-reference-sheet .modal-body>form>*{flex-shrink:0}
 .plan-usability-ui .plan-reference-sheet .modal-body>form>.form-actions{margin-top:auto!important}
 .plan-usability-ui .plan-reference-sheet .form-actions{bottom:calc(-16px - env(safe-area-inset-bottom));padding-bottom:calc(12px + env(safe-area-inset-bottom))!important}
 .plan-usability-ui .plan-entry-row>summary{min-height:48px}
}
/* Direct content, quiet headings, and one-tap module navigation. */
.plan-usability-ui .plan-start-simple .plan-today-direct{margin-top:20px;min-height:100px;padding:0;border:0;background:transparent}
.plan-usability-ui .plan-today-direct>.plan-section-head{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:0 2px}
.plan-usability-ui .plan-today-direct>.plan-section-head>h2{margin:0;font-size:16px!important}
.plan-usability-ui .plan-today-direct>.plan-section-head>.icon-btn{margin-inline-start:auto}
.plan-usability-ui .plan-today-count{font-size:13px;color:var(--ink2)}
.plan-usability-ui .plan-today-direct .plan-day-list{background:var(--card);border-radius:14px;padding:0 14px}
.plan-usability-ui .plan-today-direct .plan-day-list:empty{background:transparent;padding:0}
.plan-usability-ui .plan-direct-section{border:0!important;box-shadow:none!important;background:transparent!important;border-radius:0!important;overflow:visible!important;margin-bottom:20px}
.plan-usability-ui .plan-direct-section>.plan-fin-widget-header{border:0!important;padding:0 2px 8px!important;min-height:36px;gap:8px}
.plan-usability-ui .plan-direct-section-title{cursor:default!important;flex:1;min-width:0;padding:0!important;min-height:32px!important}
.plan-usability-ui .plan-direct-section-title h2{margin:0!important;font-size:16px!important;line-height:1.7!important}
.plan-usability-ui .plan-direct-section>.plan-fin-widget-body{padding:0!important}
.plan-usability-ui .plan-direct-section .plan-fin-widget-grip,.plan-usability-ui .plan-fin-shortcut .plan-fin-widget-grip{display:none}
.plan-usability-ui .plan-direct-section .plan-fin-widget-options{opacity:.55}
.plan-usability-ui .plan-direct-section:has(>.plan-page-widget-body>.plan-goal-grid)>.plan-fin-widget-header,.plan-usability-ui .plan-direct-section:has(>.plan-page-widget-body>.plan-project-grid)>.plan-fin-widget-header{display:none}
.plan-usability-ui .plan-fin-direct-workspace{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;align-items:start}
.plan-usability-ui .plan-fin-direct-workspace>.plan-direct-section{grid-column:1/-1;margin:0 0 8px}
.plan-usability-ui .plan-fin-shortcut{border-radius:12px!important;margin:0;min-width:0}
.plan-usability-ui .plan-fin-shortcut>.plan-fin-widget-header{padding:10px!important;gap:2px;min-width:0}
.plan-usability-ui .plan-fin-shortcut .plan-fin-widget-title{flex:1;min-width:0;min-height:44px!important;text-align:start}
.plan-usability-ui .plan-fin-shortcut .plan-fin-widget-title b{font-size:14px!important;white-space:normal;line-height:1.7!important}
.plan-usability-ui .plan-fin-shortcut .plan-fin-widget-title>i{width:24px!important;height:24px!important;flex-shrink:0}
.plan-usability-ui .plan-fin-shortcut .plan-fin-widget-title>svg:last-child{display:none}
.plan-usability-ui .plan-fin-shortcut .plan-fin-widget-options{width:28px!important;min-width:28px!important;opacity:.5}
.plan-usability-ui .plan-direct-filter-bar{margin:4px 0 16px}
.plan-usability-ui .plan-direct-filter-bar>.tabs{display:flex;gap:4px;margin:0;overflow:auto;flex-wrap:nowrap;border-bottom:1px solid var(--line);padding-bottom:6px}
.plan-usability-ui .plan-direct-filter-bar .btn{flex:1;white-space:nowrap;min-height:40px;border-radius:10px;font-size:14px!important}
@media(min-width:1000px){.plan-usability-ui .plan-fin-direct-workspace{grid-template-columns:repeat(3,minmax(0,1fr))}.plan-usability-ui .plan-start-simple .plan-today-direct{max-width:980px;margin-inline:auto}}

/* Project cards follow the same hierarchy and scale as goal cards. */
.plan-usability-ui .plan-project-reference{position:relative;padding:14px!important;gap:8px!important;min-height:0!important}
.plan-usability-ui .plan-project-reference>.plan-card-top{position:absolute;inset-inline-end:10px;top:10px;width:auto!important;padding:0!important;gap:6px!important;z-index:2}
.plan-usability-ui .plan-project-reference .plan-card-top .grow{display:none}
.plan-usability-ui .plan-project-reference>.plan-project-main{padding:0!important;gap:10px!important;margin:0!important}
.plan-usability-ui .plan-project-reference .plan-goal-reference-heading{padding-inline-end:68px}
.plan-usability-ui .plan-project-reference .plan-goal-reference-heading h2{font-size:17px!important;line-height:1.5!important;margin:0!important}
.plan-usability-ui .plan-project-reference .plan-goal-reference-heading p{-webkit-line-clamp:1;font-size:14px!important;line-height:1.6!important}
.plan-usability-ui .plan-project-reference .plan-goal-thumbnail{width:46px;height:46px;flex:0 0 46px}
.plan-usability-ui .plan-project-reference .plan-goal-reference-meta{gap:10px;flex-wrap:wrap;font-size:12px!important}
.plan-usability-ui .plan-project-reference .plan-goal-reference-track{display:flex;gap:10px;align-items:center;padding:0!important;margin:0!important}
.plan-usability-ui .plan-project-reference .plan-goal-reference-track>.plan-progress{flex:1;min-width:0;margin:0!important}
.plan-usability-ui .plan-project-percent{font-size:12px;color:var(--ink2);min-width:32px;text-align:end}
.plan-usability-ui .plan-project-reference>.plan-next{margin:0!important;padding:6px 0 0!important;background:none!important;border:none!important;gap:8px;min-width:0}
.plan-usability-ui .plan-project-reference>.plan-next>button:not(.icon-btn){font-size:13px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;text-align:start}
.plan-usability-ui .plan-project-reference .plan-project-start{width:36px;min-height:36px!important;flex-shrink:0}
.plan-usability-ui .plan-fin-direct-workspace .is-open .plan-fin-widget-title[data-a]{text-align:start;min-height:44px;flex:1}
.plan-usability-ui .plan-fin-direct-workspace .is-open .plan-fin-widget-title>svg:last-child{transform:rotate(-90deg)}

/* Accounting uses the colored, inline navigation of the inspected Parmis app. */
.plan-usability-ui .plan-parmis-finance{max-width:1040px;margin-inline:auto}
.plan-usability-ui .plan-fin-main-header{display:flex;align-items:center;gap:16px;padding:14px 8px;border-bottom:1px solid var(--line)}
.plan-usability-ui .plan-fin-main-header>div{flex:1;text-align:center;min-width:0}
.plan-usability-ui .plan-fin-main-header h1{font-size:21px!important;line-height:1.5;margin:0 0 4px!important}
.plan-usability-ui .plan-fin-main-header p{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin:0;font-size:13px;color:var(--ink2)}
.plan-usability-ui .plan-fin-main-header p b{font-weight:600;color:var(--ink)}
.plan-usability-ui .plan-parmis-finance .plan-fin-summary{display:grid;grid-template-columns:repeat(2,minmax(0,210px));justify-content:center;gap:8px 46px;margin:22px 0 14px;padding:0;background:transparent;border:0}
.plan-usability-ui .plan-fin-ring{--flow-color:#277344;position:relative;display:grid;place-items:center;aspect-ratio:1;width:100%;border:0;border-radius:50%;background:transparent;color:color-mix(in srgb,var(--flow-color) 55%,var(--ink));cursor:pointer;padding:0}
.plan-usability-ui .plan-fin-ring.is-expense{--flow-color:#67388d}
.plan-usability-ui .plan-fin-ring-arc{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 225deg,var(--flow-color) 0deg var(--flow-angle),color-mix(in srgb,var(--flow-color) 15%,var(--card)) var(--flow-angle) 270deg,transparent 270deg);mask:radial-gradient(circle,transparent 60%,#000 61%);-webkit-mask:radial-gradient(circle,transparent 60%,#000 61%)}
.plan-usability-ui .plan-fin-ring-value{display:flex;align-items:center;flex-direction:column;gap:8px;max-width:78%;padding-top:16px}
.plan-usability-ui .plan-fin-ring-value strong{font-size:18px!important;line-height:1.7;font-weight:650;overflow-wrap:anywhere}
.plan-usability-ui .plan-fin-ring-value b{font-size:20px!important;line-height:1.5}
.plan-usability-ui .plan-fin-ring-value small{display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--flow-color) 25%,transparent);border-radius:50%;width:28px;height:28px}
.plan-usability-ui .plan-fin-ring-value small svg{width:16px;height:16px}
.plan-usability-ui .plan-fin-all-transactions{grid-column:1/-1;justify-self:center;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:20px;padding:8px 18px;min-height:40px;background:var(--card);color:var(--ink2);font:inherit;font-size:13px;cursor:pointer}
.plan-usability-ui .plan-fin-all-transactions svg{width:16px;height:16px}
.plan-usability-ui .plan-fin-period{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 18px;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.plan-usability-ui .plan-fin-period-navigation{display:flex;align-items:center;gap:4px;min-width:0}
.plan-usability-ui .plan-fin-period-current{border:0;background:transparent;color:var(--ink);font:inherit;font-size:14px;min-height:44px;padding:4px 10px;cursor:pointer}
.plan-usability-ui .plan-fin-period-tabs{display:flex;gap:3px;background:var(--bg);border-radius:10px;padding:3px}
.plan-usability-ui .plan-fin-period-tabs .btn{min-height:38px!important;padding:6px 12px!important;font-size:13px!important;border-radius:8px!important}
.plan-usability-ui .plan-fin-colored-workspace{display:flex!important;flex-direction:column;gap:10px!important}
.plan-usability-ui .plan-fin-color-panel{padding:0!important;border:1px solid var(--line)!important;border-radius:11px!important;overflow:hidden;scroll-margin-top:86px;background:var(--card)!important}
.plan-usability-ui .plan-fin-color-panel>.plan-fin-widget-header{display:flex;align-items:center;gap:0;margin:0!important;padding:0 4px!important;background:var(--fin-section-color)!important;color:#fff;min-height:52px!important;border:0!important}
.plan-usability-ui .plan-fin-color-panel .plan-fin-widget-title{display:flex;align-items:center;gap:12px;padding:8px 10px!important;flex:1;min-width:0;min-height:52px!important;color:#fff!important;background:transparent!important;border:0;cursor:pointer;text-align:start}
.plan-usability-ui .plan-fin-color-panel .plan-fin-widget-title b{font-size:15px!important;font-weight:550;line-height:1.6!important}
.plan-usability-ui .plan-fin-color-panel .plan-fin-widget-title>i{display:grid;place-items:center;width:28px!important;height:28px!important;flex-shrink:0;border:1px solid #ffffff70;border-radius:50%;color:#fff!important;background:transparent!important}
.plan-usability-ui .plan-fin-color-panel .plan-fin-widget-title>i svg{width:16px!important;height:16px!important}
.plan-usability-ui .plan-fin-color-panel .plan-fin-widget-title>.grow{flex:1}
.plan-usability-ui .plan-fin-color-panel .plan-fin-widget-title>svg:last-child{width:18px;height:18px;transition:transform 180ms ease}
.plan-usability-ui .plan-fin-color-panel.is-open .plan-fin-widget-title>svg:last-child{transform:rotate(-90deg)}
.plan-usability-ui .plan-fin-color-panel .plan-fin-widget-options{color:#ffffffd9!important;flex-shrink:0}
.plan-usability-ui .plan-fin-color-panel>.plan-fin-widget-body{padding:14px!important;margin:0!important;border:0!important}
.plan-usability-ui .plan-fin-color-panel>.plan-fin-widget-body[hidden]{display:none!important}
.plan-usability-ui .plan-fin-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.plan-usability-ui .plan-fin-tools>.btn{justify-content:flex-start;min-height:48px!important;text-align:start;font-size:14px!important;border:1px solid var(--line)!important}
.plan-usability-ui .plan-fin-panel-total,.plan-usability-ui .plan-fin-flow-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;margin:0 0 12px}
.plan-usability-ui .plan-fin-flow-heading>span{color:var(--ink2);font-size:13px}
.plan-usability-ui .plan-fin-panel-total{padding:12px 0 0;border-top:1px solid var(--line);margin:12px 0 0}
.plan-usability-ui .plan-fin-account-list{display:flex;flex-direction:column}
.plan-usability-ui .plan-fin-account-row+.plan-fin-account-row{border-top:1px solid var(--line)}
.plan-usability-ui .plan-fin-account-head{display:flex;align-items:center;gap:10px;min-height:64px;width:100%;border:0;background:transparent;color:var(--ink);font:inherit;text-align:start;padding:10px 0;cursor:pointer}
.plan-usability-ui .plan-fin-account-head>i{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--bg);color:var(--fin-section-color);flex-shrink:0}
.plan-usability-ui .plan-fin-account-head>i svg{width:20px;height:20px}
.plan-usability-ui .plan-fin-account-head>span{flex:1;min-width:0}
.plan-usability-ui .plan-fin-account-head b{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.plan-usability-ui .plan-fin-account-head small{display:block;font-size:12px;color:var(--ink2)}
.plan-usability-ui .plan-fin-account-head>strong{font-size:14px;font-weight:600;text-align:end;max-width:45%;overflow-wrap:anywhere}
.plan-usability-ui .plan-fin-account-head>svg{width:16px;height:16px;flex-shrink:0}
.plan-usability-ui .plan-fin-account-row.is-open .plan-fin-account-head>svg{transform:rotate(-90deg)}
.plan-usability-ui .plan-fin-account-detail{padding:4px 0 12px}
.plan-usability-ui .plan-fin-account-actions{display:flex;gap:8px;padding:4px 0 12px}
.plan-usability-ui .plan-fin-account-actions>.btn{min-height:44px!important;font-size:14px!important}
.plan-usability-ui .plan-fin-account-detail h3{display:flex;gap:8px;align-items:center;font-size:14px!important;margin:10px 0!important}
.plan-usability-ui .plan-fin-account-detail h3 small{font-size:12px;color:var(--ink2)}
.plan-usability-ui .plan-parmis-finance .pos{color:color-mix(in srgb,#277344 55%,var(--ink))!important}
.plan-usability-ui .plan-parmis-finance .neg{color:color-mix(in srgb,#67388d 55%,var(--ink))!important}
.plan-usability-ui:has(.plan-parmis-finance) .m-bar-title>b{display:none}
.plan-usability-ui .plan-fin-drawer-overlay{position:fixed;inset:0;z-index:3000;isolation:isolate}
.plan-usability-ui .plan-fin-drawer-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:#0008;backdrop-filter:blur(3px);opacity:0;transition:opacity 180ms ease;cursor:pointer}
.plan-usability-ui .plan-fin-drawer{position:absolute;inset-block:0;inset-inline-start:0;width:min(84vw,330px);overflow:auto;overscroll-behavior:contain;background:var(--card);color:var(--ink);border-inline-end:1px solid var(--line);box-shadow:0 0 48px #0004;padding:calc(18px + env(safe-area-inset-top)) 14px calc(24px + env(safe-area-inset-bottom));transform:translateX(100%);transition:transform 180ms ease;box-sizing:border-box}
.plan-usability-ui[dir=ltr] .plan-fin-drawer{transform:translateX(-100%)}
.plan-usability-ui .plan-fin-drawer-overlay.is-open .plan-fin-drawer{transform:translateX(0)}
.plan-usability-ui .plan-fin-drawer-overlay.is-open .plan-fin-drawer-backdrop{opacity:1}
.plan-usability-ui .plan-fin-drawer header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.plan-usability-ui .plan-fin-drawer header>span{display:flex;align-items:center;gap:12px;font-size:19px}
.plan-usability-ui .plan-fin-drawer nav{display:flex;flex-direction:column;gap:3px;padding:14px 0}
.plan-usability-ui .plan-fin-drawer nav>button{display:flex;align-items:center;gap:12px;min-height:50px;width:100%;padding:8px 10px;background:transparent;border:0;border-radius:10px;color:var(--ink);font:inherit;font-size:14px;text-align:start;cursor:pointer}
.plan-usability-ui .plan-fin-drawer nav>button:hover,.plan-usability-ui .plan-fin-drawer nav>button:focus-visible{background:var(--bg)}
.plan-usability-ui .plan-fin-drawer nav>button[aria-current=page]{background:var(--bg);box-shadow:inset -3px 0 var(--primary)}
.plan-usability-ui[dir=ltr] .plan-fin-drawer nav>button[aria-current=page]{box-shadow:inset 3px 0 var(--primary)}
.plan-usability-ui .plan-fin-section-page{max-width:1040px;margin-inline:auto}
.plan-usability-ui .plan-fin-section-page .plan-fin-main-header{border-bottom:2px solid var(--fin-section-color);margin-bottom:16px}
.plan-usability-ui .plan-fin-section-content{padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.plan-usability-ui:has(.plan-fin-section-page) .m-bar-title>b{display:none}
.plan-usability-ui:has([data-plan-fin-detail-nav]) .m-bar-title>b{display:none}
.plan-usability-ui:has([data-plan-fin-detail-nav]) .view-money>.plan-head,.plan-usability-ui:has([data-plan-fin-detail-nav]) .view-money>.page-head{display:none!important}
.plan-usability-ui [data-plan-fin-detail-nav]{border-bottom:2px solid var(--fin-section-color)!important;margin-bottom:12px;padding:8px 0!important}
.plan-usability-ui [data-plan-fin-detail-nav] .plan-fin-widget-title{justify-content:center;flex:1}
.plan-usability-ui [data-plan-fin-detail-nav] h2{font-size:19px!important}
.plan-usability-ui .plan-fin-drawer nav>button>i{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;border-radius:50%;background:var(--fin-section-color);color:#fff}
.plan-usability-ui .plan-fin-drawer nav>button>i svg{width:17px;height:17px}
.plan-usability-ui .plan-fin-drawer nav>button>span{flex:1}
.plan-usability-ui .plan-fin-drawer nav>button>svg:last-child{width:16px;height:16px}
.plan-usability-ui .plan-fin-drawer footer{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--line);padding-top:14px}
.plan-usability-ui .plan-fin-drawer footer .btn{justify-content:flex-start;min-height:48px!important}
.plan-usability-ui .plan-fin-entry[data-type=expense]{--entry-accent:#67388d}
.plan-usability-ui .plan-fin-entry[data-type=income]{--entry-accent:#277344}
.plan-usability-ui .plan-fin-entry .plan-entry-submit{background:var(--entry-accent,var(--primary))!important;border-color:var(--entry-accent,var(--primary))!important;color:#fff!important}
@media(max-width:600px){
 .plan-usability-ui .plan-fin-main-header{padding:8px 0;gap:8px}
 .plan-usability-ui .plan-fin-main-header h1{font-size:19px!important}
 .plan-usability-ui .plan-fin-main-header p{gap:10px;font-size:12px}
 .plan-usability-ui .plan-parmis-finance .plan-fin-summary{grid-template-columns:repeat(2,minmax(0,168px));gap:8px 16px;margin-top:20px}
 .plan-usability-ui .plan-fin-ring-value{gap:4px;padding-top:12px}
 .plan-usability-ui .plan-fin-ring-value strong{font-size:14px!important}
 .plan-usability-ui .plan-fin-ring-value b{font-size:18px!important}
 .plan-usability-ui .plan-fin-period{flex-direction:column;gap:2px;padding:4px 8px 8px}
 .plan-usability-ui .plan-fin-period-navigation{justify-content:space-between;width:100%}
 .plan-usability-ui .plan-fin-period-tabs{width:100%}
 .plan-usability-ui .plan-fin-period-tabs .btn{flex:1;padding:6px 4px!important;min-height:40px!important}
 .plan-usability-ui .plan-fin-tools>.btn{font-size:13px!important;padding:8px!important}
}
@media(prefers-reduced-motion:reduce){.plan-usability-ui .plan-fin-drawer,.plan-usability-ui .plan-fin-drawer-backdrop,.plan-usability-ui .plan-fin-color-panel .plan-fin-widget-title>svg:last-child{transition:none!important}}

/* Project documents share records with the project; menus share the finance interaction. */
.plan-usability-ui .plan-documents-search{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:0 12px;margin-bottom:12px}
.plan-usability-ui .plan-documents-search>i{color:var(--ink2)}
.plan-usability-ui .plan-documents-search input{width:100%;min-width:0;border:0!important;background:transparent!important;font-size:16px!important;min-height:46px!important;padding:8px 0!important}
.plan-usability-ui .plan-project-documents-list{display:flex;flex-direction:column}
.plan-usability-ui .plan-project-document-row{display:flex;align-items:center;gap:12px;width:100%;padding:14px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:start;font:inherit;cursor:pointer}
.plan-usability-ui .plan-project-document-row[hidden]{display:none}
.plan-usability-ui .plan-project-document-row>i{display:grid;place-items:center;width:34px;height:38px;flex-shrink:0;color:var(--fin-section-color);background:var(--bg);border-radius:8px}
.plan-usability-ui .plan-project-document-row>span{flex:1;min-width:0}
.plan-usability-ui .plan-project-document-row b{display:block;font-size:15px;line-height:1.8}
.plan-usability-ui .plan-project-document-row small{display:block;font-size:12px;line-height:1.8;color:var(--ink2)}
.plan-usability-ui .plan-project-document-row>strong{font-size:14px;text-align:end;max-width:38%;overflow-wrap:anywhere}
.plan-usability-ui .plan-project-document-row>svg{width:16px;height:16px;flex-shrink:0}
.plan-usability-ui .plan-document-heading{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;font-size:15px}
.plan-usability-ui .plan-document-heading small{font-size:13px;color:var(--ink2)}
.plan-usability-ui .plan-document-amounts{display:flex;flex-direction:column;gap:10px;padding:14px;background:var(--bg);border:1px solid var(--line);border-radius:12px;margin-bottom:18px}
.plan-usability-ui .plan-document-amounts>span{display:flex;justify-content:space-between;gap:12px;font-size:14px}
.plan-usability-ui .plan-document-items>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}
.plan-usability-ui .plan-document-items small{display:block;font-size:12px;color:var(--ink2)}
.plan-usability-ui .plan-document-text{white-space:pre-wrap;line-height:2;font-size:14px}
.plan-usability-ui .plan-project-document-sheet .plan-document-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:20px}
.plan-usability-ui .plan-project-document-sheet .plan-document-actions .btn{min-height:46px!important;font-size:13px!important;padding:8px!important}
.plan-usability-ui .plan-project-library-header,.plan-usability-ui .plan-project-work-header{padding:0 0 14px!important;min-height:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;margin-bottom:14px!important}
.plan-usability-ui .plan-project-library-header:before,.plan-usability-ui .plan-project-work-header:before{display:none!important}
.plan-usability-ui .plan-project-work-header .plan-fin-main-header h1{max-width:none;font-size:20px!important;overflow-wrap:anywhere}
.plan-usability-ui .plan-project-work-header .plan-fin-main-header p{font-size:13px;line-height:1.7}
.plan-usability-ui .plan-project-work-tools,.plan-usability-ui .plan-project-library-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}
.plan-usability-ui .plan-project-library-tools .plan-overview-controls{margin:0!important;border:0!important;padding:0!important;flex:1;min-width:0}
.plan-usability-ui .plan-project-library-tools .plan-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;margin:0!important}
.plan-usability-ui .plan-project-library-tools .tabs .btn{font-size:13px!important;padding:6px 10px!important;min-height:40px!important}
.plan-usability-ui .plan-project-library-tools .plan-view-tools .btn{width:40px;min-height:40px!important;padding:8px!important}
.plan-usability-ui .plan-project-work-header .plan-overview-actions,.plan-usability-ui .plan-project-library-header .plan-overview-actions{display:flex;gap:4px;margin:0!important}
.plan-usability-ui .plan-project-average,.plan-usability-ui .plan-project-progress-strip{display:flex;align-items:center;gap:12px;margin:14px 0 0;font-size:13px;color:var(--ink2)}
.plan-usability-ui .plan-project-average .plan-progress,.plan-usability-ui .plan-project-progress-strip .plan-progress{flex:1;min-width:40px}
.plan-usability-ui .plan-project-progress-strip>span{white-space:nowrap}
.plan-usability-ui .plan-project-work-tools>.btn{font-size:14px!important;max-width:48%;white-space:normal;text-align:start}
.plan-usability-ui .view-project .plan-fin-color-panel .plan-fin-widget-grip,.plan-usability-ui .view-production .plan-fin-color-panel .plan-fin-widget-grip{color:#fff9;min-width:28px;background:transparent}
.plan-usability-ui .view-project .plan-fin-color-panel .plan-page-layout,.plan-usability-ui .view-production .plan-fin-color-panel .plan-page-layout{color:#fff!important;background:transparent!important}
.plan-usability-ui .view-project .plan-project-panels,.plan-usability-ui .view-production.plan-page-panel-group{gap:12px}
.plan-usability-ui .plan-drawer-group-label{font-size:12px;color:var(--ink2);margin:18px 12px 4px}
.plan-usability-ui .plan-project-drawer header>span{min-width:0;flex:1}
.plan-usability-ui .plan-project-drawer header b{font-size:17px;overflow-wrap:anywhere}
.plan-usability-ui:has(.plan-project-library-header) .m-bar-title>b{display:none}
@media(max-width:600px){
 .plan-usability-ui .plan-project-library-tools{align-items:flex-start}
 .plan-usability-ui .plan-project-library-tools .plan-toolbar{justify-content:flex-start;gap:8px}
 .plan-usability-ui .plan-project-work-header .plan-fin-main-header h1{font-size:18px!important}
 .plan-usability-ui .plan-project-document-row{gap:8px}
 .plan-usability-ui .plan-project-document-row>i{width:26px}
 .plan-usability-ui .plan-project-document-row>strong{font-size:13px}
}

/* English chrome keeps the Persian face for existing user content. */
html.lang-en.plan-usability-ui{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,IRANSans,Tahoma,sans-serif!important}
.plan-usability-ui .plan-user-text[lang="fa"],.plan-usability-ui .plan-user-value[lang="fa"]{font-family:IRANSans,Tahoma,sans-serif!important;unicode-bidi:plaintext}
.plan-usability-ui .plan-user-text{unicode-bidi:isolate;text-align:start}
.plan-usability-ui input.plan-user-value,.plan-usability-ui textarea.plan-user-value{text-align:start}

.plan-usability-ui .plan-project-reference[hidden]{display:none!important}
.plan-usability-ui .plan-project-reference .plan-project-start{flex:0 0 36px!important;width:36px!important;max-width:36px!important;min-width:36px!important}
.plan-usability-ui .plan-project-grid.is-list .plan-project-reference{display:block!important;padding:12px!important}
.plan-usability-ui .plan-project-grid.is-list .plan-project-main{display:block!important;grid-column:auto!important;grid-row:auto!important}
.plan-usability-ui .plan-project-grid.is-list .plan-goal-reference-track{margin-top:8px!important}
.plan-usability-ui .plan-project-grid.is-list .plan-project-reference.plan-swipe-open>:not(.plan-swipe-delete){transform:translateX(-82px)}
@media(max-width:760px){.plan-usability-ui .plan-project-reference>.plan-card-top .plan-grip{display:none!important}}

/* One document workspace, selected per project and shared with Accounting. */
.plan-usability-ui .plan-document-inline{display:block!important;width:100%;flex-basis:100%;margin-top:8px}
.plan-usability-ui .plan-document-control-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.plan-usability-ui .plan-document-control-heading>b{font-size:15px;font-weight:600}
.plan-usability-ui .plan-document-choices{display:flex;flex-wrap:wrap;gap:8px}
.plan-usability-ui .plan-document-choices>label,.plan-usability-ui .plan-document-choice{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 10px;background:var(--bg);border:1px solid var(--line);border-radius:10px;color:var(--ink);font:inherit;font-size:14px;cursor:pointer}
.plan-usability-ui .plan-document-choice[aria-checked=true]{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--surface))}
.plan-usability-ui .plan-document-choice .check{display:grid;place-items:center;flex:0 0 19px;width:19px;height:19px;margin:0;border-radius:6px;pointer-events:none}
.plan-usability-ui .plan-document-choices input{accent-color:var(--primary);width:19px;height:19px;margin:0}
.plan-usability-ui .plan-document-selected-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.plan-usability-ui .plan-document-selected-actions:empty{display:none}
.plan-usability-ui .plan-document-selected-actions .btn{min-height:40px!important;font-size:13px!important;padding:8px 10px!important}
.plan-usability-ui .plan-document-preview-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:14px 0;margin-bottom:18px}
.plan-usability-ui .plan-document-preview-tabs .btn{font-size:14px!important;min-height:42px!important}
.plan-usability-ui .plan-document-type-tags{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}
.plan-usability-ui .plan-document-type-tags em{font-style:normal;font-size:12px;padding:3px 7px;border:1px solid var(--line);border-radius:6px;color:var(--ink2);background:var(--bg)}
.plan-usability-ui .plan-document-official-buyer{display:flex;flex-direction:column;gap:7px;font-size:14px;padding:12px 0;border-bottom:1px solid var(--line)}
.plan-usability-ui .plan-project-document-sheet .plan-document-actions>.btn:last-child{grid-column:1/-1}
.plan-usability-ui .plan-document-create{margin:8px 0}
@media(max-width:600px){
 .plan-usability-ui .plan-document-choices{gap:6px}
 .plan-usability-ui .plan-document-choice{padding:8px;font-size:13px;flex:1 0 auto}
 .plan-usability-ui .plan-project-document-sheet .plan-document-control-heading{margin-top:4px}
 .plan-usability-ui .plan-project-document-row>strong{max-width:30%;overflow-wrap:anywhere}
}

/* Project completion and work completion are distinct, weighted counts. */
.plan-usability-ui .plan-project-summary-rings{display:grid;grid-template-columns:repeat(2,minmax(0,190px));justify-content:center;gap:26px;margin:18px 0 12px}
.plan-usability-ui .plan-project-summary-ring{min-width:0;text-align:center}
.plan-usability-ui .plan-project-summary-ring .plan-fin-ring-value{padding-top:0;gap:5px;max-width:80%}
.plan-usability-ui .plan-project-summary-ring .plan-fin-ring-value strong{font-size:27px!important;line-height:1.3}
.plan-usability-ui .plan-project-summary-ring .plan-fin-ring-value b{font-size:17px!important}
.plan-usability-ui .plan-project-ring-count{font-size:12px;line-height:1.5;color:var(--ink2)}
.plan-usability-ui .plan-project-summary-ring>p{font-size:13px;margin:-6px 0 0;color:var(--ink2)}
@media(max-width:600px){
 .plan-usability-ui .plan-project-summary-rings{grid-template-columns:repeat(2,minmax(0,160px));gap:14px;margin:16px 0 12px}
 .plan-usability-ui .plan-project-summary-ring .plan-fin-ring-value strong{font-size:24px!important}
 .plan-usability-ui .plan-project-summary-ring .plan-fin-ring-value b{font-size:15px!important}
 .plan-usability-ui .plan-project-ring-count{font-size:12px}
 .plan-usability-ui .plan-project-summary-ring>p{font-size:12px}
}

/* Native Apple typography for English, with Persian user content kept intact. */
html.lang-en.plan-usability-ui{--plan-english-font:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Segoe UI",Arial,sans-serif}
html.lang-en.plan-usability-ui body{font-family:var(--plan-english-font)!important;-webkit-font-smoothing:antialiased}
html.lang-en.plan-usability-ui :is(button,input,textarea,select,summary,h1,h2,h3,h4):not([lang="fa"]){font-family:inherit!important}
html.lang-en.plan-usability-ui :is(.plan-day-quote,.plan-quote):not([lang="fa"]){font-family:var(--plan-english-font)!important}
html.lang-en.plan-usability-ui :is(h1,h2,h3,h4):not([lang="fa"]){letter-spacing:-.015em}
html.lang-en.plan-usability-ui :is(.plan-user-text,.plan-user-value)[lang="fa"]{font-family:IRANSans,Tahoma,sans-serif!important;letter-spacing:normal}

/* Shared summary geometry for Accounting and Projects. */
.plan-usability-ui .plan-parmis-finance .plan-fin-summary,.plan-usability-ui .plan-project-summary-rings{grid-template-columns:repeat(2,minmax(0,190px));gap:10px 32px;margin:20px 0 14px}
.plan-usability-ui :is(.plan-fin-summary,.plan-project-summary-rings) .plan-fin-ring-value b{font-size:18px!important}
.plan-usability-ui :is(.plan-fin-summary,.plan-project-summary-rings) .plan-fin-ring-value strong{font-size:20px!important;font-weight:650;line-height:1.5}
.plan-usability-ui :is(.plan-fin-summary,.plan-project-summary-rings) .plan-fin-ring-value{gap:6px;padding-top:10px}
.plan-usability-ui .plan-currency-money{font-size:16px!important;direction:ltr}
@media(max-width:600px){
 .plan-usability-ui .plan-parmis-finance .plan-fin-summary,.plan-usability-ui .plan-project-summary-rings{grid-template-columns:repeat(2,minmax(0,160px));gap:8px 18px;margin:18px 0 12px}
 .plan-usability-ui :is(.plan-fin-summary,.plan-project-summary-rings) .plan-fin-ring-value b{font-size:16px!important}
 .plan-usability-ui :is(.plan-fin-summary,.plan-project-summary-rings) .plan-fin-ring-value strong{font-size:18px!important}
}

/* Selectable phase icons: names appear on hover, keyboard focus or touch hold. */
.plan-usability-ui .plan-phase-pick{display:flex;gap:10px;flex-wrap:wrap;padding:7px 0 12px;overflow:visible}
.plan-usability-ui label.plan-phase-choice{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;width:74px;height:52px;padding:10px!important;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--ink2);cursor:pointer;touch-action:pan-y;user-select:none;-webkit-touch-callout:none}
.plan-usability-ui .plan-phase-choice:has(input:checked){border-color:var(--primary);color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,var(--surface))}
.plan-usability-ui .plan-phase-choice input{width:18px;height:18px;margin:0;accent-color:var(--primary);flex-shrink:0}
.plan-usability-ui .plan-phase-choice i{display:flex;align-items:center}
.plan-usability-ui .plan-phase-choice .ic{width:23px;height:23px}
.plan-usability-ui .plan-phase-choice .plan-phase-tooltip{position:absolute;top:calc(100% + 5px);inset-inline-start:0;z-index:30;display:none;white-space:nowrap;width:max-content;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);padding:5px 9px;box-shadow:0 5px 16px #0002;font-size:13px;pointer-events:none}
.plan-usability-ui .plan-phase-choice:focus-within .plan-phase-tooltip,.plan-usability-ui .plan-phase-choice.is-tooltip-open .plan-phase-tooltip{display:block}
.plan-usability-ui .plan-phase-choice:focus-within{outline:2px solid var(--primary);outline-offset:2px}
@media(hover:hover){.plan-usability-ui .plan-phase-choice:hover .plan-phase-tooltip{display:block}}

/* A project home with direct steps, finance and production stage access. */
.plan-usability-ui .plan-project-step-scroll{max-height:420px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.plan-usability-ui .plan-project-home-steps .plan-project-steps>.plan-section-head{display:none}
.plan-usability-ui .plan-project-home-finance .plan-project-inline-receipts{margin:0 0 14px}
.plan-usability-ui .plan-project-home-finance .money-strip{margin:0 0 15px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.plan-usability-ui :is(.plan-project-finance-detail,.plan-project-stage-detail){border:1px solid var(--line);border-radius:11px;margin:9px 0;overflow:hidden;background:var(--bg)}
.plan-usability-ui :is(.plan-project-finance-detail,.plan-project-stage-detail)>summary{display:flex;align-items:center;gap:10px;padding:13px 12px;min-height:48px;cursor:pointer;list-style:none;font-size:15px;color:var(--ink)}
.plan-usability-ui :is(.plan-project-finance-detail,.plan-project-stage-detail)>summary::-webkit-details-marker{display:none}
.plan-usability-ui :is(.plan-project-finance-detail,.plan-project-stage-detail)>summary :is(span,b){flex:1}
.plan-usability-ui :is(.plan-project-finance-detail,.plan-project-stage-detail)>summary small{font-size:13px;color:var(--ink2)}
.plan-usability-ui :is(.plan-project-finance-detail,.plan-project-stage-detail)[open]>summary{border-bottom:1px solid var(--line)}
.plan-usability-ui .plan-project-finance-detail>.card{border:0;box-shadow:none;margin:0;background:transparent}
.plan-usability-ui .plan-project-finance-detail>.card>.card-head>h2{display:none}
.plan-usability-ui .plan-project-stage-detail>.plan-quick{margin:12px}
.plan-usability-ui .plan-project-stage-tools{display:flex;flex-wrap:wrap;gap:5px;padding:0 12px 12px}
.plan-usability-ui .plan-project-stage-tools>.btn{font-size:13px!important;min-height:42px!important}
.plan-usability-ui .plan-project-section-controls{margin:12px 0}
@media(max-width:600px){.plan-usability-ui .plan-project-step-scroll{max-height:340px}.plan-usability-ui .plan-project-home-finance .money-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* The shared hamburger navigation also belongs to Goals and its weekly checklist. */
.plan-usability-ui .plan-goal-overview .plan-goal-menu-title{grid-column:1;grid-row:1;display:flex;align-items:center;gap:12px;min-width:0}
.plan-usability-ui .plan-goal-menu-title>h1{font-size:20px!important;margin:0!important;line-height:1.5}
.plan-usability-ui .plan-goal-menu-title>.icon-btn{flex:0 0 42px;width:42px;height:42px}
@media(max-width:600px){.plan-usability-ui .plan-goal-menu-title{gap:8px}.plan-usability-ui .plan-goal-menu-title>h1{font-size:18px!important}.plan-usability-ui .plan-goal-overview .plan-overview-heading{grid-template-columns:minmax(0,1fr) auto}.plan-usability-ui .plan-goal-view-menu{grid-column:2;grid-row:2}.plan-usability-ui .plan-goal-overview .plan-overview-actions{grid-column:2;grid-row:1}}

/* Today keeps its calendar; Activities offers one shared work index. */
.plan-usability-ui .plan-today-menu-header{display:flex;align-items:center;gap:10px;margin:0 0 10px;padding:8px 0;border-bottom:1px solid var(--line)}
.plan-usability-ui .plan-menu-calendar{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--ink);background:none;border:0;font:inherit;font-size:15px;min-height:44px}
.plan-usability-ui .plan-work-hub-header h1{font-size:20px!important}
.plan-usability-ui .plan-hub-tools{display:flex;align-items:center;gap:12px;margin:14px 0}
.plan-usability-ui .plan-hub-tools>.plan-goal-search{flex:1;margin:0}
.plan-usability-ui .plan-hub-tools>span{font-size:13px;color:var(--ink2);white-space:nowrap}
.plan-usability-ui .plan-hub-list .plan-task{border-radius:10px;margin:8px 0}
.plan-usability-ui .plan-hub-list .plan-task b{font-size:15px;line-height:1.5}
.plan-usability-ui .plan-hub-list .plan-task small{font-size:12px;line-height:1.6}
.plan-usability-ui .plan-activity-menu-title{display:flex;align-items:center;gap:12px;margin:10px 0}
.plan-usability-ui .plan-activity-menu-title>h1{margin:0!important}
.plan-usability-ui .plan-hub-entry[hidden]{display:none!important}
@media(max-width:600px){.plan-usability-ui .plan-menu-calendar{font-size:14px}.plan-usability-ui .plan-hub-tools{gap:8px}.plan-usability-ui .plan-hub-tools>span{font-size:12px}}

.plan-usability-ui .plan-hub-list .plan-links:empty{display:none}

/* Shared navigation geometry: one top row and one 44px menu target. */
.plan-usability-ui .view>.plan-navigation-header{display:flex!important;align-items:flex-start!important;gap:12px!important;padding:8px 0!important;margin:0 0 12px!important;min-height:60px!important;box-sizing:border-box;width:100%;border-bottom:1px solid var(--line);background:transparent!important;border-radius:0!important}
.plan-usability-ui .plan-navigation-header>.plan-goal-menu-title{display:flex;align-items:flex-start;gap:12px;flex:1;min-width:0;margin:0}
.plan-usability-ui .plan-navigation-header>.plan-goal-menu-title>h1{flex:1;text-align:center;padding-top:9px}
.plan-usability-ui .plan-navigation-header>div:not(.plan-overview-actions):not(.plan-goal-menu-title){flex:1;min-width:0;text-align:center}
.plan-usability-ui .plan-navigation-header .icon-btn,.plan-usability-ui .plan-navigation-header .plan-navigation-menu-button{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;max-width:44px!important;max-height:44px!important;flex:0 0 44px!important;padding:10px!important;margin:0!important;box-sizing:border-box!important;border:1px solid var(--line)!important;border-radius:10px!important;color:var(--ink2)!important;background:transparent!important;box-shadow:none!important}
.plan-usability-ui .plan-navigation-header .plan-navigation-menu-button .ic{width:22px!important;height:22px!important;stroke-width:1.8}
.plan-usability-ui .plan-navigation-header>.plan-overview-actions{display:flex;align-items:center;gap:8px;margin:0!important}
.plan-usability-ui .plan-navigation-header .plan-goal-view-menu{margin:0}
.plan-usability-ui .plan-navigation-header>div>h1{font-size:20px!important;line-height:1.5!important;margin:6px 0!important}
.plan-usability-ui .plan-navigation-header.plan-activity-menu-title>h1{flex:1;text-align:center;font-size:20px!important;margin:6px 0!important}
.plan-usability-ui .plan-work-hub-header:empty{display:none!important}

.plan-usability-ui{scrollbar-gutter:stable}

/* Fixed hierarchy shared by all primary summaries and navigation destinations. */
.plan-usability-ui{--plan-summary-ring-size:190px;--plan-heading-size:20px;--plan-section-size:16px;--plan-summary-value-size:20px;--plan-summary-caption-size:16px}
.plan-usability-ui #app .view h1{font-size:var(--plan-heading-size)!important;line-height:1.5!important}
.plan-usability-ui #app .view h2{font-size:var(--plan-section-size)!important;line-height:1.65!important}
.plan-usability-ui #app .view h3{font-size:15px!important;line-height:1.65!important}
.plan-usability-ui #app .modal-head h2{font-size:18px!important;line-height:1.5!important}
.plan-usability-ui :is(.plan-fin-summary,.plan-project-summary-rings){grid-template-columns:repeat(2,minmax(0,var(--plan-summary-ring-size)))!important;gap:12px 18px!important;justify-content:center}
.plan-usability-ui #app :is(.plan-fin-summary,.plan-project-summary-rings,.plan-day-progress) .plan-fin-ring{width:var(--plan-summary-ring-size)!important;height:var(--plan-summary-ring-size)!important;margin-inline:auto}
.plan-usability-ui #app :is(.plan-fin-summary,.plan-project-summary-rings,.plan-day-progress) .plan-fin-ring-value strong{font-size:var(--plan-summary-value-size)!important;line-height:1.5!important;font-weight:650}
.plan-usability-ui #app :is(.plan-fin-summary,.plan-project-summary-rings,.plan-day-progress) .plan-fin-ring-value b{font-size:var(--plan-summary-caption-size)!important;line-height:1.5!important;font-weight:600}
.plan-usability-ui .plan-progress-summary-ring{cursor:default}
.plan-usability-ui #app .plan-start-hero .plan-day-progress{display:block!important;width:var(--plan-summary-ring-size)!important;flex:0 0 var(--plan-summary-ring-size)!important}
.plan-usability-ui #app .plan-day-progress p{font-size:13px!important;line-height:1.6!important;margin:6px 0 0!important}
.plan-usability-ui .plan-goal-overview .plan-start-greeting>.plan-activity-facts{display:flex!important;flex-direction:column;align-items:flex-start;gap:8px;flex:1}
.plan-usability-ui .plan-navigation-header>.plan-activity-facts{display:none!important}
@media(max-width:760px){.plan-usability-ui{--plan-summary-ring-size:clamp(104px,calc((100vw - 96px)/2),160px);--plan-summary-value-size:clamp(16px,4.5vw,20px)}.plan-usability-ui .plan-goal-overview{padding:16px!important}}
@media(max-width:380px){.plan-usability-ui #app .plan-fin-summary .plan-fin-ring-value>small{display:none}}

.plan-usability-ui #app .plan-start-hero .plan-day-progress{max-width:none!important;min-width:var(--plan-summary-ring-size)!important}
.plan-usability-ui #app :is(.plan-fin-summary,.plan-project-summary-rings,.plan-day-progress) .plan-fin-ring-value{color:var(--ink)}

.plan-usability-ui .plan-project-ring-count{font-size:12px!important;line-height:1.5!important}

/* Subactivity typing stays inside the Today list. */
.plan-inline-sub-row{display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--line)}
.plan-usability-ui .plan-inline-sub-row>.plan-subactivity-row{flex:1;min-width:0;border-bottom:0}
.plan-inline-sub-row>.icon-btn{width:40px;height:40px;flex:none;color:var(--muted)}
.plan-inline-sub-row .ic{width:17px;height:17px}
.plan-inline-sub-form{display:flex;align-items:center;gap:4px;margin-block:8px;min-width:0}
.plan-inline-sub-form input{min-width:0;flex:1;font-size:16px!important;min-height:44px;padding:8px 10px}
.plan-inline-sub-form .icon-btn{flex:none;width:40px;height:44px}
.plan-inline-sub-form button[type=submit]{color:var(--primary)}
.plan-usability-ui .plan-subactivity-edit[hidden]{display:none!important}
/* Each project phase tool is visible on compact phones, without a clipped tab strip. */
.plan-usability-ui .plan-project-subtabs{display:flex;flex-wrap:wrap;gap:5px;overflow:visible;min-width:0;max-width:100%;padding:5px 0}
.plan-usability-ui .plan-project-subtabs>button{flex:1 1 auto;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.6;min-height:44px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;padding:8px 10px}
.plan-usability-ui .plan-project-subtabs .ic{flex:none;width:18px;height:18px}
@media(max-width:760px){.plan-usability-ui .plan-project-subtabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.plan-usability-ui .plan-project-stage-tools>.btn{max-width:100%;white-space:normal;overflow-wrap:anywhere}}

.plan-inline-sub-form input{scroll-margin-block:90px}

/* Neutral light/dark foundations with an independently chosen accent. */
:root[data-appearance]{--primary:var(--appearance-accent);--primary2:var(--appearance-accent);--primary-d:var(--primary2);--accent2:var(--primary);--primary-bg:var(--s2);--blue:var(--primary);--violet:var(--primary);--film:var(--primary);--side:var(--bg2);--side2:var(--s2);--side-ink:var(--ink2);--side-hi:var(--ink);--side-ic:var(--card);--side-line:var(--line);--side-accent:var(--primary);--s0:var(--card);--s1:var(--card);--b1:var(--line);--b2:var(--line2);--ink-hi:var(--ink);--hazard:linear-gradient(90deg,var(--primary),var(--bg2))}
:root[data-appearance=light]{--bg:#F6F7F9;--bg2:#ECEFF3;--card:#FFFFFF;--card2:#F1F3F6;--ink:#242D39;--ink2:#4D5B6C;--muted:#647386;--line:#D7DEE7;--line2:#B7C3D2;--s2:#E5EBF2;--on-primary:#FFFFFF;--green:#326C52;--red:#AB3E49;--orange:#975C34;--amber:#856320;--pink:#954F70;--teal:#2E7464;--shadow:0 5px 20px #18283D0A;--shadow-lg:0 18px 50px #18283D24;--sh:#18283D10;color-scheme:light}
:root[data-appearance=dark]{--bg:#14181E;--bg2:#191F27;--card:#202731;--card2:#1B222C;--ink:#F1F3F6;--ink2:#CDD5E0;--muted:#A3AFBF;--line:#36414F;--line2:#506174;--s2:#2B3745;--on-primary:#14202C;--green:#8CCBAD;--red:#F19BA1;--orange:#E9AF85;--amber:#DCC491;--pink:#EBA5C1;--teal:#82CEC3;--shadow:0 5px 20px #00000012;--shadow-lg:0 18px 50px #00000040;--sh:#00000026;color-scheme:dark}
:root[data-appearance] .sidebar{background:var(--side)!important}
:root[data-appearance] .btn.primary{color:var(--on-primary)!important}
:root[data-appearance] .plan-week-strip>button.selected{background:var(--primary)!important;color:var(--on-primary)!important}
:root[data-appearance] .plan-week-strip>button.selected small{color:var(--on-primary)!important}
.plan-appearance-controls>h3{margin:20px 0 12px!important}
.plan-appearance-controls>h3:first-child{margin-top:8px!important}
.plan-appearance-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.plan-appearance-modes>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;min-height:84px;border:1px solid var(--line2);border-radius:14px;background:var(--card);color:var(--ink2);font-size:14px;padding:12px 8px}
.plan-appearance-modes>button .ic{width:24px;height:24px}
.plan-appearance-modes>button[aria-pressed=true]{border-color:var(--primary);background:var(--s2);color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}
.plan-accent-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px 6px}
.plan-accent-chip{display:flex;flex-direction:column;align-items:center;gap:6px;border:0;background:transparent;padding:6px 2px;min-width:0;min-height:70px;color:var(--ink2);font-size:12px;line-height:1.5}
.plan-accent-chip>i{display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:var(--accent-light);border-radius:50%;color:#fff;box-shadow:0 0 0 3px var(--card),0 0 0 4px transparent}
:root[data-appearance=dark] .plan-accent-chip>i{background:var(--accent-dark);color:var(--on-primary)}
.plan-accent-chip[aria-pressed=true]>i{box-shadow:0 0 0 3px var(--card),0 0 0 4px var(--primary)}
.plan-accent-chip span{white-space:normal;overflow-wrap:anywhere}
.plan-accent-chip:focus-visible,.plan-appearance-modes>button:focus-visible{outline:2px solid var(--primary);outline-offset:4px}
@media(min-width:761px){.plan-appearance-controls{max-width:650px}}
@media(max-width:380px){.plan-accent-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

.plan-usability-ui .view-settings:has(.plan-appearance-controls) .font-row{justify-content:center;gap:8px}
.plan-usability-ui .view-settings:has(.plan-appearance-controls) .font-row>.seg{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;flex:0 0 100%;gap:4px}
.plan-usability-ui .view-settings:has(.plan-appearance-controls) .font-row>.seg label{min-width:0;min-height:42px;justify-content:center;padding:6px 3px;font-size:12px;white-space:normal;text-align:center}

/* Financial values use the same three-line hierarchy as project summaries. */
.plan-usability-ui #app .plan-fin-chart-summary .plan-fin-ring-value{padding-top:10px;gap:6px;max-width:80%;min-width:0}
.plan-usability-ui #app .plan-fin-chart-summary .plan-fin-ring-value strong{font-family:inherit;font-variant-numeric:tabular-nums;white-space:nowrap;overflow-wrap:normal;font-weight:650;direction:ltr;unicode-bidi:isolate}
.plan-usability-ui #app .plan-fin-chart-summary .plan-ring-currency{font-size:12px!important;line-height:1.5;color:var(--ink2)}
.plan-usability-ui #app .set-about .about-card{display:flex!important;flex-direction:column;align-items:center;gap:20px;text-align:center;padding:28px 20px!important;max-width:580px;margin-inline:auto}
.plan-usability-ui #app .set-about .about-card>.grow{width:100%;min-width:0;flex:initial}
.plan-usability-ui #app .about-card h2{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:8px;font-size:20px!important;margin:0 0 12px!important}
.plan-usability-ui #app .about-card h2 small{font-size:14px!important;line-height:1.6}
.plan-usability-ui #app .about-card p{font-size:15px!important;line-height:1.9!important;margin:8px 0;max-width:44ch;margin-inline:auto}
.plan-usability-ui #app .about-card .about-logo{flex:none;width:64px;height:64px;margin:0}
.plan-usability-ui #app .about-card .insta{max-width:100%;font-size:14px!important;white-space:normal;overflow-wrap:anywhere}
.plan-usability-ui .plan-reference-context{width:min(540px,100%);max-width:540px}
.plan-usability-ui .plan-reference-context .modal-body{padding:16px 20px 20px}
.plan-usability-ui .plan-reference-context .plan-goal-scopes{position:sticky;top:-16px;z-index:2;background:var(--card);padding:8px 0;margin:0 0 16px}
.plan-usability-ui .plan-reference-preview :is(.plan-card-top,.plan-next,.plan-swipe-delete,.plan-goal-reference-track>.btn){display:none!important}
.plan-usability-ui .plan-reference-preview :is(.plan-goal,.plan-project){margin:0;border:1px solid var(--line);border-radius:16px;padding:16px;background:var(--card)}
.plan-usability-ui .plan-reference-preview .plan-goal-reference-main{padding:0;text-align:inherit;width:100%}
.plan-usability-ui .plan-reference-preview h2{font-size:18px!important;line-height:1.6!important}
.plan-usability-ui .plan-reference-preview p{font-size:14px!important;line-height:1.8!important}
.plan-usability-ui .plan-reference-preview .plan-goal-reference-track{margin-top:14px}
.plan-usability-ui .plan-reference-actions{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:20px}
.plan-usability-ui .plan-reference-actions>.btn{width:max-content;max-width:100%;min-width:180px;min-height:44px;justify-content:flex-start;font-size:16px!important;padding:10px 18px}
.plan-usability-ui .plan-reference-actions>.btn svg{width:20px;height:20px;flex:none}
.plan-usability-ui .plan-reference-more{margin-top:18px;color:var(--ink2);font-size:14px}
.plan-usability-ui .plan-reference-more>summary{cursor:pointer;text-align:center;padding:8px}
.plan-usability-ui .plan-reference-more .btn-col{margin-top:8px}
@media(max-width:380px){.plan-usability-ui .plan-reference-context .modal-body{padding-inline:12px}}
.plan-usability-ui .plan-reference-preview :is(.plan-goal,.plan-project){display:block!important;width:100%;min-width:0}
.plan-usability-ui .plan-reference-preview .plan-goal-reference-track{width:100%;min-width:0;clear:both}
.plan-usability-ui .plan-reference-preview .plan-goal-reference-numbers{width:100%;font-size:13px;line-height:1.6;gap:12px;margin-top:8px}

/* Accounting uses the same summary component, outside legacy financial tiles. */
.plan-usability-ui .plan-fin-chart-summary .plan-fin-ring-arc{margin:0}

/* Short press opens details; held title cards reveal their contextual actions. */
.plan-usability-ui :is(.plan-goal,.plan-project-reference){transition:transform 150ms ease,box-shadow 150ms ease}
.plan-usability-ui .plan-item.plan-touch-pressing{transform:scale(.98)!important;box-shadow:inset 0 0 0 1px var(--line2)}
.plan-usability-ui .plan-reference-context{animation:plan-context-reveal 160ms ease-out}
@keyframes plan-context-reveal{from{opacity:0;transform:scale(.97) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}
@media(prefers-reduced-motion:reduce){.plan-usability-ui :is(.plan-goal,.plan-project-reference){transition:none}.plan-usability-ui .plan-item.plan-touch-pressing{transform:none!important}.plan-usability-ui .plan-reference-context{animation:none}}

.plan-usability-ui .plan-touch-pressing{transition:transform 150ms ease,box-shadow 150ms ease;transform:scale(.98)!important;box-shadow:inset 0 0 0 1px var(--line2)}
.plan-usability-ui .plan-held-preview{padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--card);text-align:start}
.plan-usability-ui .plan-held-preview h2{font-size:18px!important;line-height:1.7;margin:0;overflow-wrap:anywhere}
.plan-usability-ui .plan-held-preview p{font-size:14px;line-height:1.8;color:var(--ink2);margin:6px 0 0;overflow-wrap:anywhere}
@media(prefers-reduced-motion:reduce){.plan-usability-ui .plan-touch-pressing{transition:none;transform:none!important}}

/* A brief first-use guide, readable in either language and on small screens. */
.plan-usability-ui .plan-onboarding{width:min(500px,100%);max-width:500px;animation:plan-context-reveal 180ms ease-out}
.plan-usability-ui .plan-onboarding .modal-body{padding:18px 24px 20px;text-align:center}
.plan-usability-ui .plan-tour-symbol{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 16px;border-radius:20px;background:color-mix(in srgb,var(--primary) 15%,var(--card));color:var(--primary)}
.plan-usability-ui .plan-tour-symbol svg{width:32px;height:32px}
.plan-usability-ui .plan-onboarding h2{font-size:20px!important;line-height:1.6!important;margin:0 0 12px;outline:none}
.plan-usability-ui .plan-tour-description{font-size:15px!important;line-height:1.9!important;color:var(--ink2);margin:0 auto 20px;max-width:38ch}
@media(max-width:380px){.plan-usability-ui .plan-onboarding .modal-body{padding:14px 16px}.plan-usability-ui .plan-tour-symbol{width:52px;height:52px;margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){.plan-usability-ui .plan-onboarding{animation:none}}

/* Coachmarks spotlight the real app, with a clickable opening in the shade. */
.plan-usability-ui .plan-tour-welcome-actions{display:flex;flex-direction:column;gap:10px;align-items:stretch}
.plan-guided-tour{position:fixed;inset:0;z-index:10000;pointer-events:none;color:var(--ink);font-family:inherit}
.plan-guided-tour[hidden]{display:none}
.plan-tour-shade{position:absolute;background:rgba(0,0,0,.54);pointer-events:auto;touch-action:pan-y}
.plan-tour-focus{position:absolute;pointer-events:none;border-radius:12px;outline:2px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 5px color-mix(in srgb,var(--primary) 20%,transparent)}
.plan-tour-coach{position:absolute;pointer-events:auto;background:var(--card);border:1px solid var(--line2);border-radius:18px;padding:16px;color:var(--ink);box-shadow:0 12px 36px #0004;max-height:calc(100dvh - 32px);overflow:auto;text-align:start}
.plan-tour-coach-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:var(--ink2);margin-bottom:8px}
.plan-tour-coach-meta>button{font:inherit;color:var(--ink2);border:0;background:none;min-height:36px;padding:6px 4px;cursor:pointer}
.plan-tour-coach h2{font-family:inherit;font-size:18px!important;line-height:1.6!important;margin:0 0 8px!important;outline:none}
.plan-tour-coach>p{font-size:14px!important;line-height:1.8!important;margin:0;color:var(--ink2)}
.plan-tour-coach-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.plan-tour-coach-actions>.btn{min-height:44px;font-size:14px!important}
.plan-tour-coach-actions>.btn:disabled{opacity:.5;cursor:default}
.plan-tour-coach .plan-tour-validation:empty{display:none}
.plan-tour-coach .plan-tour-validation{margin-top:10px;color:var(--red);font-size:13px!important}
@media(max-width:380px){.plan-tour-coach{padding:12px}.plan-tour-coach h2{font-size:17px!important}.plan-tour-coach>p{font-size:14px!important}}
.plan-tour-peek{display:none!important;position:absolute;top:calc(8px + env(safe-area-inset-top));left:50%;transform:translateX(-50%);pointer-events:auto;background:var(--card)!important;box-shadow:0 2px 10px #0003;min-height:38px;font-size:13px!important}
.plan-guided-tour.is-minimized .plan-tour-coach{display:none}
.plan-guided-tour.is-minimized .plan-tour-peek{display:flex!important}
.plan-tour-coach-actions{flex-wrap:wrap}

/* Quiet profile feedback and a native-picker-free logo entry path. */
.brand-state{min-height:1.5em;font-size:var(--plan-small,14px)}
.plan-logo-drop{display:flex;flex-direction:column;justify-content:center;min-height:64px;flex:1 1 180px;padding:12px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);outline-offset:3px}
.plan-logo-drop.is-over{border-color:var(--primary);background:var(--surface)}
.plan-logo-drop small,.plan-logo-status{font-size:14px;line-height:1.7}
.brand-logo:has(.plan-logo-drop){flex-wrap:wrap}
@media (pointer:coarse){.plan-logo-drop{display:none}}
/* Consistent product hierarchy, using the app's existing appearance tokens. */
html.plan-refined-product:not(.lang-en) body{font-family:IRANSans,Tahoma,sans-serif!important;font-synthesis:none}
.plan-refined-product :is(button,input,select,textarea){font-family:inherit}
.plan-refined-product :is(.plan-list,.plan-hub-list){gap:12px}
.plan-refined-product .plan-hub-list{padding:0;background:transparent;border:0;display:flex;flex-direction:column}
.plan-refined-product :is(.plan-task,.plan-check-row){background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 14px;min-height:64px;margin:0;box-shadow:0 1px 2px #00000006;transition:background .15s,border-color .15s}
.plan-refined-product .plan-hub-entry>.plan-task{margin:0}
.plan-refined-product .plan-item-main{min-width:0;gap:3px}
.plan-refined-product .plan-item-main b{font-size:14px;font-weight:500;line-height:1.65;overflow-wrap:anywhere}
.plan-refined-product .plan-item-main small{font-size:12px;line-height:1.65;color:var(--muted);overflow-wrap:anywhere}
.plan-refined-product .plan-task .plan-subactivities{flex-basis:100%;margin-top:4px;padding-inline-start:28px;background:transparent;border:0}
.plan-refined-product .plan-task .plan-subactivity-row{border:0;border-top:1px solid var(--line);padding:9px 0}
.plan-refined-product .plan-project-grid.is-list{gap:12px}
.plan-refined-product .plan-project-grid.is-list .plan-project{border:1px solid var(--line)!important;background:var(--card)!important;border-radius:12px!important;margin:0!important}
.plan-refined-product .plan-project-card-nav,.plan-refined-product .plan-project-stage-tools{flex-wrap:wrap;gap:8px}
.plan-refined-product .plan-project-stage-tools>.btn{min-width:0;flex:1 1 110px;white-space:normal}
.plan-refined-product .plan-project-work-header .plan-project-work-tools{gap:8px;flex-wrap:wrap}
.plan-refined-product .plan-project-work-header .plan-project-work-tools>.btn{min-height:42px;background:var(--card);border:1px solid var(--line)}
.plan-refined-product .plan-greeting-quote{font-family:PlanAlmas,IRANSans,Tahoma,sans-serif!important;font-synthesis:none;font-weight:400;font-size:clamp(18px,1.6vw,20px);line-height:1.9;color:var(--ink2);max-width:54ch;margin:12px 0 0}
.plan-refined-product .plan-display-options{flex:none;width:36px;min-width:36px;height:36px;min-height:36px;padding:8px;margin-inline-start:auto;color:var(--muted);border:0;background:transparent}
.plan-refined-product .plan-display-options:hover{background:var(--card);color:var(--ink)}
.plan-refined-product .plan-schedule-segments{display:flex;gap:4px;border:1px solid var(--line);border-radius:10px;background:var(--card);padding:4px;margin:12px 0}
.plan-refined-product .plan-schedule-segments>button{flex:1;font-size:13px;min-height:40px;border-radius:7px}
.plan-refined-product .plan-hub-tools{gap:12px;margin:12px 0 16px}
.plan-refined-product .plan-goal-search{min-height:44px;border-radius:10px;background:var(--card);border:1px solid var(--line)}
.plan-refined-product .plan-hub-tools>span{font-size:12px;white-space:nowrap}
.plan-refined-product .plan-timeline-label{padding:8px 4px 0;color:var(--muted);font-size:12px;font-weight:500;border-inline-start:2px solid var(--primary);padding-inline-start:12px}
.plan-refined-product [data-plan-density="compact"] :is(.plan-task,.plan-check-row){padding:9px 12px;min-height:52px}
.plan-refined-product [data-plan-density="compact"] :is(.plan-list,.plan-hub-list){gap:8px}
.plan-refined-product [data-plan-metadata="false"] :is(.plan-item-main>small,.plan-links,.plan-goal-row-caption,.plan-project-sub,.plan-project-meta){display:none}
.plan-refined-product .plan-provider-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}
.plan-refined-product .plan-provider-settings .seg{flex-wrap:wrap}
.plan-refined-product .plan-provider-settings .seg>label{flex:1 1 130px}
.plan-refined-product .plan-provider-settings>.seg{margin-bottom:16px}
.plan-refined-product .plan-provider-panel[hidden],.plan-refined-product [hidden]{display:none!important}
.plan-refined-product .plan-provider-panel .field{min-width:0;margin:0}
.plan-refined-product .plan-goal-target-date{margin:10px 0 16px}
.plan-refined-product .plan-goal-record-sheet .plan-entry-row,.plan-refined-product .plan-goal-record-sheet .field{margin-bottom:14px}
.plan-refined-product .plan-goal-record-sheet input[name="value"]{font-size:26px;min-height:64px;text-align:center;font-variant-numeric:tabular-nums}
.plan-refined-product .plan-record-goal{display:flex;flex-direction:column;gap:5px;padding:0 0 18px}
.plan-refined-product .plan-record-goal b{font-size:16px}.plan-refined-product .plan-record-goal small{font-size:12px;color:var(--muted)}
.plan-refined-product .plan-record-add{width:100%;min-height:44px;margin:6px 0}
.plan-refined-product .plan-track-records>div{gap:8px;flex-wrap:wrap;font-size:13px}
.plan-refined-product .plan-track-records>div>span{flex:1;min-width:100px}
.plan-refined-product .plan-image-led-goal .goal-hero .ring{display:none}
.plan-refined-product .plan-image-led-goal .goal-hero{grid-template-columns:1fr;display:flex}
.plan-refined-product .plan-image-led-goal .plan-goal-visual{margin:0 0 16px}
.plan-refined-product .plan-image-led-goal .plan-goal-image{width:100%;max-height:220px;aspect-ratio:16/9;object-fit:cover;border-radius:12px}
@media(max-width:600px){
 .plan-refined-product .plan-provider-panel{grid-template-columns:1fr}
 .plan-refined-product .plan-hub-tools{flex-wrap:wrap}.plan-refined-product .plan-hub-tools>.plan-goal-search{width:100%;flex-basis:100%}
 .plan-refined-product .plan-hub-tools>span{margin-inline-start:auto}
 .plan-refined-product :is(.plan-task,.plan-check-row){padding:12px;gap:9px}
 .plan-refined-product :is(input,select,textarea){font-size:16px!important}
 .plan-refined-product .plan-item-main{min-width:90px}
 .plan-refined-product .plan-greeting-quote{font-size:18px;line-height:1.8}
 .plan-refined-product .plan-start-greeting>div:first-child{min-width:0}
 .plan-refined-product .plan-project-work-tools>.plan-overview-actions{flex-shrink:0}
}
@media(prefers-reduced-motion:reduce){.plan-refined-product *{scroll-behavior:auto!important}}
.plan-refined-product .plan-navigation-header .plan-display-options{border:0!important;color:var(--muted)!important;padding:12px!important}
.plan-refined-product .plan-display-goal-controls{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.plan-refined-product .plan-display-goal-controls .plan-view-tools{margin-top:10px}
.plan-refined-product .plan-image-led-goal .plan-goal-photo{height:auto;max-height:220px;aspect-ratio:16/9;object-fit:cover}
/* Display options: shared reference controls, per-tab behavior. */
.plan-display-sheet {width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 32px);}
.plan-display-sheet .modal-body {padding-top:8px;}
.plan-display-form {display:block;}
.plan-display-form fieldset {border:1px solid var(--line);border-radius:12px;margin:0 0 14px;padding:4px 14px 6px;background:var(--card);min-width:0;}
.plan-display-form legend {padding:0 6px;font-size:13px;font-weight:700;color:var(--ink);}
.plan-display-form .plan-display-option {display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.65;cursor:pointer;color:var(--ink);}
.plan-display-form .plan-display-option:last-child {border:0;}
.plan-display-form .plan-display-option input {width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:0;accent-color:var(--primary);}
.plan-display-hint {display:flex;align-items:flex-start;gap:6px;font-size:12px;line-height:1.8;margin:8px 0 0;}
.plan-display-hint .ic {flex:0 0 16px;}
.plan-secondary-display-bar {display:flex;justify-content:flex-end;min-height:44px;margin-bottom:8px;}
.plan-display-options,.plan-display-timeline {width:36px;height:36px;flex:0 0 36px;min-height:36px;color:var(--muted);background:transparent;border:0;padding:8px;}
.plan-display-options:hover,.plan-display-options:focus-visible,.plan-display-timeline[aria-pressed=true] {color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,transparent);}
.plan-display-options .ic,.plan-display-timeline .ic {width:20px;height:20px;}
.plan-display-group {margin:0 0 12px;min-width:0;}
.plan-display-group-head {width:100%;display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--ink);font:inherit;padding:10px 2px;cursor:pointer;text-align:start;}
.plan-display-group-head b {font-size:14px;}
.plan-display-group-head small {font-size:12px;color:var(--muted);}
.plan-display-group-head .ic:last-child {margin-inline-start:auto;transform:rotate(-90deg);transition:transform .18s;}
.plan-display-group.is-folded .plan-display-group-head .ic:last-child {transform:rotate(0);}
.plan-display-group-cards {display:grid;gap:12px;}
.plan-hub-entry {position:relative;min-width:0;}
.plan-display-grip {font:inherit;font-size:19px;line-height:1;display:block;width:32px;height:32px;border:0;border-radius:7px;background:var(--card);color:var(--muted);cursor:grab;touch-action:none;position:absolute;inset-inline-end:8px;bottom:4px;z-index:1;}
.plan-hub-entry:has(>.plan-display-grip)>.plan-task {padding-bottom:36px;}
.plan-project,.plan-goal {position:relative;}
.plan-project:has(>.plan-display-grip),.plan-goal:has(>.plan-display-grip) {padding-bottom:38px;}
.plan-display-moving {opacity:.55;}
.plan-display-drop {outline:2px solid var(--primary);outline-offset:3px;}
.view[data-plan-density=compact] .plan-subactivities,.view[data-plan-density=compact] .plan-task-note,.view[data-plan-density=compact] .plan-task .plan-tags,.view[data-plan-density=compact] .plan-project .plan-project-meta,.view[data-plan-density=compact] .plan-goal .plan-goal-why {display:none;}
.view[data-plan-density=compact] .plan-task {padding-top:10px;padding-bottom:10px;min-height:52px;}
.view[data-plan-density=compact] .plan-fin-widget-body,.view[data-plan-density=compact] .plan-page-panel-body {padding:10px;}
.view[data-plan-density=compact] .card,.view[data-plan-density=compact] .plan-section {padding:12px;}
.view[data-plan-density=compact] .field {margin-bottom:10px;}
.view[data-plan-density=compact] .plan-hub-entry:has(>.plan-display-grip)>.plan-task {padding-bottom:34px;}
.plan-display-group-cards[hidden],.plan-display-group[hidden],.plan-hub-entry[hidden] {display:none!important;}
@media(max-width:600px){.plan-display-sheet{max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 24px);}.plan-display-form .plan-display-option{min-height:44px;}.plan-display-options,.plan-display-timeline{min-width:36px;}.plan-shared-menu-header,.plan-today-menu-header,.plan-fin-main-header{gap:6px;}.plan-display-form input {font-size:16px;}}
.plan-usability-ui .modal.plan-display-sheet {width:min(440px,calc(100vw - 24px));max-width:440px;}
.plan-refined-product .plan-today-direct .plan-day-list {background:transparent;padding:0;}
.plan-refined-product .plan-display-group-cards>.plan-hub-entry {margin:0;}
.plan-refined-product .view[data-plan-density=compact] .plan-goal-reference-heading p,.plan-refined-product .view[data-plan-density=compact] .plan-goal-reference-meta {display:none;}
@media(prefers-reduced-motion:reduce){.plan-display-group-head .ic:last-child{transition:none;}}
.plan-week-checklist-row {position:relative;}
.plan-week-checklist-row:has(>.plan-display-grip) {padding-bottom:38px;}
@media(min-width:601px){.plan-usability-ui .modal.plan-display-sheet{width:min(440px,calc(100vw - 32px))!important;max-width:440px!important;}}

/* One quiet, fixed toolbar pair across the entire application. */
.plan-refined-product .plan-global-tools{display:flex;align-items:center;gap:4px;flex:none;margin:0}
.plan-refined-product .plan-global-tools>button{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;padding:9px!important;margin:0!important;border:0!important;border-radius:10px;background:transparent!important;color:var(--muted)!important;box-shadow:none!important}
.plan-refined-product .plan-global-tools>button:hover{background:var(--bg2)!important;color:var(--ink)!important}
.plan-refined-product .plan-global-tools>button svg{width:21px;height:21px}
.plan-refined-product #mOpts{display:none!important}
.plan-refined-product .plan-start-simple>.plan-review-buttons{display:flex;gap:8px;justify-content:flex-start;margin:10px 0 14px;padding:0}
.plan-refined-product .plan-start-simple>.plan-review-buttons>button{display:flex;align-items:center;gap:8px;flex:none;min-height:42px;padding:7px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card);font-size:14px;color:var(--ink)}
.plan-refined-product .plan-start-simple>.plan-review-buttons>button i{display:inline-flex;color:var(--primary)}
.plan-refined-product .plan-start-simple>.plan-start-hero{min-height:0;padding-block:18px!important}
/* Override old transparent rows and preserve contrast in light/dark/system. */
.plan-refined-product.plan-usability-ui :is(.plan-task,.plan-check-row){min-height:64px!important;padding:12px 14px!important;background:var(--card)!important;border:1px solid var(--line)!important;border-radius:12px!important}
.plan-refined-product .plan-hub-entry .plan-task.plan-colored-activity{border-inline-start:3px solid var(--activity-accent)!important;background:color-mix(in srgb,var(--card) 94%,var(--activity-accent))!important}
.plan-refined-product .plan-task.plan-colored-activity .check{accent-color:var(--activity-accent)}
.plan-refined-product .plan-timer-trigger{border:0!important;outline-offset:3px;background:transparent!important;box-shadow:none!important;color:var(--muted)!important}
.plan-refined-product .plan-timer-trigger:hover{color:var(--primary)!important}
.plan-refined-product .plan-task .plan-subactivities{border:0!important;border-inline-start:0!important;background:transparent!important;padding:4px 0 0 28px!important;margin:0!important}
.plan-refined-product .plan-task .plan-subactivity-row{border:0!important;background:transparent!important;padding:7px 0!important}
.plan-refined-product .plan-task .plan-subactivities>summary{border:0!important;background:transparent!important}
.plan-refined-product .plan-activity-owners{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px;margin-top:6px;color:var(--muted);text-align:start}
.plan-refined-product .plan-activity-owners>span{display:flex;align-items:flex-start;gap:5px;max-width:160px;min-width:0}
.plan-refined-product .plan-activity-owners svg{width:14px;height:14px;flex:none;color:var(--activity-accent,var(--primary));margin-top:2px}
.plan-refined-product .plan-item-main .plan-activity-owners small{font-size:11px!important;line-height:1.6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}
.plan-refined-product .plan-colored-record{border-inline-start:3px solid var(--record-accent)!important;background:color-mix(in srgb,var(--card) 95%,var(--record-accent))!important}
.plan-refined-product .plan-colored-record .plan-progress>i,.plan-refined-product .plan-colored-workspace .plan-progress>i{background:var(--record-accent)!important}
.plan-refined-product .plan-colored-record .plan-goal-thumbnail{color:var(--record-accent);background:color-mix(in srgb,var(--card) 86%,var(--record-accent))}
.plan-refined-product .plan-colored-workspace .plan-check-row{border-inline-start:3px solid var(--record-accent)!important;background:color-mix(in srgb,var(--card) 95%,var(--record-accent))!important}
.plan-refined-product .plan-colored-workspace :is(.check,.plan-progress){accent-color:var(--record-accent)}
.plan-refined-product :is(.view-project,.view-production) .plan-fin-color-panel>.plan-fin-widget-header{background:var(--fin-section-color)!important;color:white!important;border:0}
.plan-refined-product :is(.view-project,.view-production) .plan-fin-color-panel .plan-fin-widget-title,.plan-refined-product :is(.view-project,.view-production) .plan-fin-color-panel .plan-fin-widget-title>i{color:white!important}
.plan-refined-product :is(.view-project,.view-production) .plan-fin-color-panel :is(.plan-fin-widget-grip,.plan-page-layout){color:#ffffffcf!important}
.plan-refined-product .view-production .plan-fin-color-panel>.plan-page-widget-body{background:var(--bg)!important}
.plan-refined-product .plan-project-grid{gap:12px}
.plan-refined-product .plan-project{background:var(--card)!important;border:1px solid var(--line)!important;box-shadow:0 2px 5px #00000008}
.plan-refined-product .plan-project.plan-colored-record{border-inline-start:3px solid var(--record-accent)!important;background:color-mix(in srgb,var(--card) 95%,var(--record-accent))!important}
.plan-refined-product .plan-project-finance-detail>summary{background:color-mix(in srgb,var(--card) 89%,var(--fin-section-color))!important;border-inline-start:3px solid var(--fin-section-color);color:var(--ink)!important}
.plan-refined-product .plan-project-finance-detail>summary>svg:first-child{color:var(--fin-section-color)}
.plan-refined-product .plan-record-colors{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:8px 0}
.plan-refined-product .plan-color-swatch{width:30px;min-width:30px;height:30px;min-height:30px;padding:0;border-radius:50%;border:3px solid var(--card);background:var(--swatch);box-shadow:0 0 0 1px var(--line)}
.plan-refined-product .plan-color-swatch[aria-pressed="true"]{box-shadow:0 0 0 2px var(--ink);transform:scale(.93)}
.plan-refined-product .plan-custom-color{display:flex;align-items:center;gap:5px;position:relative;font-size:12px;border:1px solid var(--line);border-radius:8px;padding:6px 8px;overflow:hidden;cursor:pointer}
.plan-refined-product .plan-custom-color svg{width:15px;height:15px}.plan-refined-product .plan-custom-color input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}
.plan-refined-product .plan-color-hint{font-size:12px;color:var(--muted);line-height:1.7}
.plan-refined-product .plan-goal-destination-list{display:flex;flex-direction:column;gap:10px;margin:16px 0}
.plan-refined-product .plan-goal-destination-row{display:flex;align-items:center;gap:12px;padding:14px;background:var(--card);border:1px solid var(--line);border-inline-start:3px solid var(--record-accent);border-radius:12px}
.plan-refined-product .plan-goal-destination-row .plan-item-main{flex:1}
.plan-refined-product .plan-goal-destination-row>.plan-progress{flex:0 1 120px;min-width:40px}.plan-refined-product .plan-goal-destination-row .plan-progress>i{background:var(--record-accent)}
/* Compact mode affects real accounting rows and panel spacing, not amounts. */
.plan-refined-product [data-plan-density="compact"] :is(.plan-task,.plan-check-row){min-height:48px!important;padding:7px 10px!important}
.plan-refined-product [data-plan-density="compact"] :is(.plan-fin-widget-body,.plan-page-widget-body){padding:8px!important}
.plan-refined-product [data-plan-density="compact"] :is(.plan-fin-widget-header,.plan-page-widget-header){min-height:42px!important;padding-block:4px!important}
.plan-refined-product [data-plan-density="compact"] :is(.plan-fin-inline-row,.plan-fin-person,.plan-fin-account-row,.plan-fin-document-row,.plan-account,.plan-event,.plan-fin-tx-row){padding-block:6px!important;min-height:40px!important;margin-block:2px!important}
.plan-refined-product [data-plan-density="compact"] :is(.plan-fin-inline-row,.plan-fin-person,.plan-fin-account-row,.plan-fin-document-row,.plan-account,.plan-event,.plan-fin-tx-row) small{display:none!important}
.plan-refined-product [data-plan-density="compact"] .plan-fin-account-grid{gap:6px!important}
.plan-refined-product [data-plan-density="compact"] .plan-activity-owners{margin-top:3px}.plan-refined-product [data-plan-density="compact"] .plan-activity-owners small{display:block!important}
@media(max-width:600px){
 .plan-refined-product .m-bar-side.end{gap:2px;min-width:128px}
 .plan-refined-product .m-bar-title{min-width:0;flex:1}
 .plan-refined-product .plan-global-tools>button{width:40px!important;min-width:40px!important}
 .plan-refined-product .plan-start-simple>.plan-review-buttons>button{flex:1;justify-content:center}
 .plan-refined-product .plan-task .plan-subactivities{padding-inline-start:26px!important}
 .plan-refined-product .plan-goal-destination-row{gap:8px;padding:12px}
}
html.plan-refined-product.plan-usability-ui :is(.plan-topbar,.m-bar) .plan-global-tools>[data-a="assist:open"]{width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:9px!important;background:transparent!important;border:0!important;color:var(--muted)!important}
html.plan-refined-product.plan-usability-ui .plan-global-tools>[data-a="assist:open"] .ic{width:21px!important;height:21px!important}
.plan-refined-product [data-plan-density="compact"] .plan-fin-account-head{min-height:44px!important;padding:6px 0!important}
.plan-refined-product [data-plan-density="compact"] .plan-fin-account-head small{display:none!important}
.plan-refined-product [data-plan-density="compact"] .plan-fin-account-row{padding:0!important}
.plan-refined-product .plan-task .plan-item-main>small:empty{display:none}
html.plan-refined-product.plan-usability-ui .plan-start-simple>.plan-review-buttons{margin:4px 0 10px!important;gap:8px!important}
html.plan-refined-product.plan-usability-ui .plan-start-simple>.plan-review-buttons>button{flex-direction:row!important;justify-content:center;min-height:40px!important;padding:6px 12px!important;gap:7px!important;border-radius:9px!important;background:var(--card)!important}
html.plan-refined-product.plan-usability-ui .plan-start-simple>.plan-review-buttons>button i{display:inline-flex!important;align-items:center;justify-content:center;width:20px!important;height:20px!important;flex:none}
html.plan-refined-product.plan-usability-ui .plan-start-simple>.plan-review-buttons>button span{font-size:14px!important}
html.plan-refined-product.plan-usability-ui .plan-start-simple>.plan-review-buttons>button>svg:last-child{margin-inline-start:0}
.plan-refined-product .plan-task.plan-colored-activity{border-inline-start:3px solid var(--activity-accent)!important;background:color-mix(in srgb,var(--card) 94%,var(--activity-accent))!important}
.plan-refined-product .plan-project-stage-detail>summary{background:color-mix(in srgb,var(--card) 86%,var(--fin-section-color))!important;border-inline-start:3px solid var(--fin-section-color);color:var(--ink)!important}
.plan-refined-product .plan-project-stage-detail>summary>svg:first-child{color:var(--fin-section-color)}
.plan-refined-product .plan-project-stage-detail :is(.plan-quick,.plan-project-stage-tools){--primary:var(--fin-section-color)}
.plan-refined-product .plan-project-stage-tools>.btn{border:1px solid color-mix(in srgb,var(--fin-section-color) 40%,var(--line))!important;background:color-mix(in srgb,var(--card) 92%,var(--fin-section-color))!important;color:var(--ink)!important}
.plan-refined-product .plan-project-stage-tools>.btn>svg{color:var(--fin-section-color)}
.plan-refined-product .plan-project-stage-detail>.plan-quick{border-color:color-mix(in srgb,var(--fin-section-color) 40%,var(--line));background:color-mix(in srgb,var(--card) 96%,var(--fin-section-color))}
.plan-refined-product .plan-project-finance-detail>.card{background:color-mix(in srgb,var(--card) 97%,var(--fin-section-color))!important}
/* Record cards use their chosen color, with a contrasting computed foreground. */
html.plan-refined-product.plan-usability-ui :is(.plan-goal,.plan-project).plan-colored-record{background:var(--record-accent)!important;color:var(--record-ink)!important;border:1px solid color-mix(in srgb,var(--record-ink) 22%,var(--record-accent))!important;border-inline-start:3px solid var(--record-accent)!important;box-shadow:0 2px 7px #00000014}
html.plan-refined-product.plan-usability-ui .plan-colored-record :is(h2,p,small,time,b,.plan-item-main,.plan-goal-reference-main,.plan-project-main,.plan-project-percent,.plan-goal-reference-meta,.plan-goal-reference-numbers,.plan-next button,.plan-goal-reference-track>.btn){color:var(--record-ink)!important}
html.plan-refined-product.plan-usability-ui .plan-colored-record :is(.icon-btn,.plan-display-grip){color:var(--record-ink)!important;border-color:color-mix(in srgb,var(--record-ink) 30%,transparent)!important;background:transparent!important}
html.plan-refined-product.plan-usability-ui .plan-colored-record .plan-card-top{border-color:color-mix(in srgb,var(--record-ink) 22%,transparent)!important}
html.plan-refined-product.plan-usability-ui .plan-colored-record .plan-goal-thumbnail{color:var(--record-ink)!important;background:color-mix(in srgb,var(--record-ink) 13%,transparent)!important}
html.plan-refined-product.plan-usability-ui .plan-colored-record .plan-progress{background:color-mix(in srgb,var(--record-ink) 20%,transparent)!important}
html.plan-refined-product.plan-usability-ui .plan-colored-record .plan-progress>i{background:var(--record-ink)!important}
html.plan-refined-product.plan-usability-ui .plan-colored-record .plan-next{border-color:color-mix(in srgb,var(--record-ink) 22%,transparent)!important;background:transparent!important;color:var(--record-ink)!important}
html.plan-refined-product.plan-usability-ui .plan-colored-record .plan-goal-reference-numbers>span{color:var(--record-ink)!important}
.plan-refined-product .plan-activity-owners>span{flex-direction:column;gap:2px;align-items:flex-start}
.plan-refined-product .plan-activity-owners>span svg{margin:0}
.plan-refined-product .plan-inline-sub-row{border:0!important}
.plan-refined-product .plan-inline-sub-row>.icon-btn{border:0!important;background:transparent!important;box-shadow:none!important}
@media(min-width:761px){
 html.plan-refined-product .m-fab{display:grid!important;place-items:center;position:fixed;inset:auto auto 24px 24px;width:52px;height:52px;min-width:52px;min-height:52px;border:0;border-radius:50%;background:var(--primary);color:var(--on-primary);box-shadow:0 6px 20px #0002;z-index:80;cursor:pointer}
 html.plan-refined-product .m-fab .ic{width:24px;height:24px}
}
.plan-refined-product .plan-colored-activity{--primary:var(--activity-accent);--on-primary:var(--activity-ink,#fff);--primary-ink:var(--activity-ink,#fff)}
.plan-refined-product .plan-colored-record{--primary:var(--record-ink);--on-primary:var(--record-accent);--primary-ink:var(--record-accent)}
.plan-refined-product .plan-colored-workspace{--primary:var(--record-accent);--on-primary:var(--record-ink,#fff);--primary-ink:var(--record-ink,#fff);--primary-bg:color-mix(in srgb,var(--record-accent) 14%,transparent)}
/* Gentle record color keeps the selected hue without a saturated block. */
html.plan-refined-product.plan-usability-ui :is(.plan-goal,.plan-project).plan-colored-record{--record-ink:var(--ink)!important;--primary:var(--record-accent)!important;--on-primary:var(--record-on-accent,#fff)!important;--primary-ink:var(--record-on-accent,#fff)!important;background:color-mix(in srgb,var(--card) 82%,var(--record-accent))!important;border-color:color-mix(in srgb,var(--line) 65%,var(--record-accent))!important;border-inline-start:3px solid var(--record-accent)!important}
html.plan-refined-product.plan-usability-ui .plan-colored-record .plan-progress>i{background:var(--record-accent)!important}
html.plan-refined-product.plan-usability-ui .plan-colored-record .plan-goal-thumbnail{color:color-mix(in srgb,var(--record-accent) 70%,var(--ink))!important;background:color-mix(in srgb,var(--card) 80%,var(--record-accent))!important}
.plan-refined-product .plan-record-colors{gap:9px;max-width:380px}

/* Selected project stages stay visible on each project card. */
html.plan-refined-product.plan-usability-ui .plan-project-card-phases{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap}
html.plan-refined-product.plan-usability-ui .plan-project-card-phase{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;color:var(--record-accent,var(--primary))!important;background:color-mix(in srgb,var(--record-accent,var(--primary)) 12%,var(--card))}
html.plan-refined-product.plan-usability-ui .plan-project-card-phase .ic{width:19px;height:19px;flex-shrink:0}
html.plan-refined-product.plan-usability-ui .view[data-plan-density=compact] .plan-project-reference .plan-goal-reference-meta{display:flex;gap:8px;margin-top:6px}
html.plan-refined-product.plan-usability-ui .view[data-plan-density=compact] .plan-project-reference .plan-goal-reference-meta time{display:none}

.plan-refined-product .plan-schedule-count{font-size:12px;min-width:20px;padding:1px 5px;border-radius:6px;background:color-mix(in srgb,currentColor 9%,transparent);color:inherit}
.plan-refined-product .plan-resolve-section{--fin-section-color:#22659c;padding:0!important;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:var(--card)!important}
.plan-refined-product .plan-resolve-section>summary{display:flex;align-items:center;gap:10px;min-height:52px;padding:12px 14px;cursor:pointer;list-style:none;background:var(--fin-section-color)!important;color:white!important;font-size:15px!important}
.plan-refined-product .plan-resolve-section>summary::-webkit-details-marker{display:none}
.plan-refined-product .plan-resolve-section>summary .ic{width:20px;height:20px;flex:none;color:inherit}
.plan-refined-product .plan-resolve-section>summary .ic:last-child{transition:transform .18s ease}
.plan-refined-product .plan-resolve-section[open]>summary .ic:last-child{transform:rotate(-90deg)}
.plan-refined-product .plan-resolve-section>.plan-page-widget-body{padding:14px}
.plan-refined-product .plan-resolve-section .plan-resolve{margin:0;border:0;box-shadow:none;background:transparent;padding:0}
@media(prefers-reduced-motion:reduce){.plan-refined-product .plan-resolve-section>summary .ic:last-child{transition:none}}

/* Linked delivery dates, separate from activity checklists. */
.plan-project-deadlines{margin:12px 0 18px;display:grid;gap:8px}
.plan-project-deadlines h2{display:flex;align-items:center;gap:7px;margin:0 0 3px;font-size:15px;font-weight:600;color:var(--muted)}
.plan-project-deadlines h2 svg{width:16px;height:16px}
.plan-pinned-project{display:flex;align-items:center;gap:12px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--record-color) 28%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--record-color) 9%,var(--card));color:var(--ink);min-width:0}
.plan-pinned-project>button{padding:0;background:none;border:0;text-align:start;min-width:0;color:inherit}
.plan-pinned-project button span{display:flex;align-items:center;gap:7px;font-size:15px}
.plan-pinned-project button b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.plan-pinned-project button small{display:block;margin-top:5px;color:var(--muted);font-size:12px}
.plan-pinned-project svg{width:17px;height:17px;flex-shrink:0;color:var(--record-color)}
.plan-water-reminder-settings h3{font-size:16px;display:flex;align-items:center;gap:8px}
.plan-water-reminder-settings input,.plan-water-reminder-sheet input{font-size:16px}
.plan-water-reminder-settings .form-grid,.plan-water-reminder-sheet .form-grid{margin-top:12px}
.plan-water-reminder-settings .form-actions,.plan-water-reminder-sheet .form-actions{flex-wrap:wrap}
.plan-water-config{float:inline-end;color:var(--primary)}
.plan-water-progress{font-size:15px;font-weight:600}

.plan-health-workspace .cd-head .plan-water-config{position:absolute!important;left:52px!important;right:auto!important;top:12px!important;margin:0!important;width:34px!important;height:34px!important;z-index:1}

/* One consent step; device registration and delivery verification stay automatic. */
.plan-notification-consent{display:flex;align-items:center;gap:10px;padding:12px 14px;margin:0 0 14px;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--ink)}
.plan-notification-consent>span{color:var(--primary)}
.plan-notification-consent>div{flex:1;min-width:0}
.plan-notification-consent b{font-size:14px;font-weight:600}
.plan-notification-consent p{margin:3px 0 0;font-size:13px;color:var(--muted);line-height:1.6}
.plan-notification-consent .btn{flex-shrink:0;min-height:44px;font-size:13px}

/* Quiet library headers; scope and status choices remain directly available. */
html.plan-usability-ui .plan-goal-library-header,
html.plan-usability-ui .plan-project-library-header{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:8px 0!important;margin:0 0 10px!important;min-height:48px!important}
html.plan-usability-ui .plan-project-library-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:0 0 14px;padding:0}
html.plan-usability-ui .plan-project-library-tools .plan-toolbar,
html.plan-usability-ui .plan-project-library-tools .plan-overview-actions{margin:0!important}
html.plan-usability-ui .plan-goal-library-header+.plan-goal-scopes{margin:0 0 14px;justify-content:flex-start}
html.plan-usability-ui .plan-review-form>.plan-day-quote{font-family:PlanAlmas,IRANSans,Tahoma,sans-serif!important;font-weight:400;font-size:19px!important;line-height:1.9!important;color:var(--ink2);text-align:start;padding:0 0 14px!important;margin:0 0 14px!important;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
html.lang-en.plan-usability-ui .plan-review-form>.plan-day-quote{font-family:var(--plan-english-font)!important;font-size:16px!important}

/* Keep focused text at its actual size, including while the sheet opens.
   A scale animation can briefly shrink a 16px input below Safari's threshold. */
@media(max-width:1024px),(any-pointer:coarse){
 html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
 #modalRoot .modal.plan-activity-sheet{animation:fade .15s ease-out!important;transform:none!important;font-size:16px}
 #modalRoot .modal.plan-activity-sheet :where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=hidden]),select,textarea){font-size:16px!important;line-height:1.6!important;min-width:0;max-width:100%;box-sizing:border-box}
 #modalRoot .modal.plan-activity-sheet input[name=title]{font-size:18px!important}
}
.plan-notification-consent .icon-btn{flex-shrink:0;width:36px;height:44px}
@media(max-width:480px){.plan-notification-consent{gap:8px;padding:10px;flex-wrap:wrap}.plan-notification-consent>div{flex-basis:calc(100% - 50px)}.plan-notification-consent .btn{margin-inline-start:30px}.plan-notification-consent .icon-btn{margin-inline-start:auto}}

/* Plan Pro 3.6 web additions (from Wedding Flow 1.2) */
html,body{-webkit-text-size-adjust:100%;text-size-adjust:100%;touch-action:pan-x pan-y}
/* Tabs: one width for every page, centred and edge to edge */
.view-goals .plan-goal-scopes{width:100%!important;max-width:none!important;margin-inline:0!important}
.plan-project-library-tools{display:block}
.plan-project-library-tools .plan-overview-actions{display:none}
.plan-project-library-tools .plan-overview-controls,.plan-project-library-tools .plan-toolbar{width:100%}
.plan-project-library-tools .tabs{display:flex;width:100%;gap:4px;padding:4px;background:var(--s2);border:1px solid var(--line);border-radius:12px}
.plan-project-library-tools .tabs>.btn{flex:1;min-height:44px;justify-content:center}
/* Titles: centred on every page, like Accounting */
.view .plan-fin-main-header.plan-navigation-header>.plan-navigation-menu-button{flex:0 0 44px;width:44px}
.view .plan-fin-main-header.plan-navigation-header:not(:has(>:nth-child(3)))::after{content:"";flex:0 0 44px;width:44px}
.view .plan-fin-main-header.plan-navigation-header>div{flex:1;min-width:0;text-align:center}
.view>.pp-page-title{display:flex;align-items:center;justify-content:center;min-height:52px;margin:2px 0 10px}
.view>.pp-page-title h1{margin:0;font-size:22px;text-align:center}
.main:has(.view>.pp-page-title) .m-bar-title b{visibility:hidden}
/* Pull to refresh */
.pp-pull{position:fixed;left:50%;top:calc(env(safe-area-inset-top,0px) + 64px);z-index:40;width:38px;height:38px;border-radius:50%;background:var(--card,#fff);border:1px solid var(--line);box-shadow:0 4px 14px rgba(0,0,0,.08);display:grid;place-items:center;opacity:0;transform:translate(-50%,-46px);pointer-events:none}
.pp-pull svg{width:22px;height:22px}
.pp-pull circle{stroke:var(--primary);opacity:.55}
.pp-pull.is-ready circle,.pp-pull.is-spinning circle{opacity:1}
.pp-pull.is-spinning svg{animation:pp-spin .8s linear infinite}
@keyframes pp-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.pp-pull.is-spinning svg{animation-duration:2s}}
/*  */
/* Touch screens in any orientation: fields are 16px so iPhone never zooms on focus */
@media (pointer:coarse){html body input:not([type=checkbox]):not([type=radio]):not([type=range]),html body textarea,html body select{font-size:16px!important}}
.plan-notification-consent{display:none!important}
/* Small phones (iPhone SE): the top bar never makes the page wider than the screen */

.m-bar>.m-bar-title{min-width:0!important;flex:1 1 0!important;overflow:hidden}
.m-bar>.m-bar-title b,.m-bar>.m-bar-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:360px){.m-bar{gap:4px!important;padding-inline:8px!important}}
html,body{overflow-x:clip}
@media(max-width:360px){.m-bar{margin-inline:-12px!important}}
/* Start / end of day: two equal halves across the page on every screen size, like the goal tabs */
.view .plan-review-buttons{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;max-width:none!important;margin-inline:0!important}
.view .plan-review-buttons>button{width:100%!important;min-width:0!important;min-height:46px;justify-content:center!important;display:flex!important;align-items:center;gap:8px}

/*  */
/* 1.2.8 goals as a list */
.view .plan-goal-grid.is-list{display:flex!important;flex-direction:column;gap:8px!important}
.view .plan-goal-grid.is-list .plan-goal{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center;gap:0 10px!important;padding:10px 14px!important;min-height:0!important}
.view .plan-goal-grid.is-list .plan-goal-reference-main{grid-column:1!important;grid-row:1!important;padding:0!important;min-width:0;text-align:start}
.view .plan-goal-grid.is-list .plan-card-top{grid-column:2!important;grid-row:1!important;padding:0!important;gap:6px!important;flex-wrap:nowrap!important}
.view .plan-goal-grid.is-list .plan-card-top .grow,.view .plan-goal-grid.is-list .plan-goal-reference-heading p,.view .plan-goal-grid.is-list .plan-goal-reference-meta span,.view .plan-goal-grid.is-list .plan-goal-reference-track .btn,.view .plan-goal-grid.is-list .plan-goal-reference-numbers,.view .plan-goal-grid.is-list .plan-goal-photo{display:none!important}
.view .plan-goal-grid.is-list .plan-goal-reference-heading{display:flex!important;align-items:center;gap:10px;margin:0!important}
.view .plan-goal-grid.is-list .plan-goal-thumbnail{width:38px!important;height:38px!important;flex:none;border-radius:10px!important}
.view .plan-goal-grid.is-list .plan-goal-reference-heading h2{font-size:15px!important;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.view .plan-goal-grid.is-list .plan-goal-reference-meta{margin:2px 0 0!important;padding:0!important;border:0!important;font-size:12px}
.view .plan-goal-grid.is-list .plan-goal-reference-track{grid-column:1 / -1!important;grid-row:2!important;margin:8px 0 0!important;padding:0!important}
.view .plan-goal-grid.is-list .plan-goal-reference-track .plan-progress{height:3px!important;margin:0!important;flex:1}
.view .plan-goal-grid.is-list .plan-display-grip{position:static!important;inset:auto!important;grid-column:3!important;grid-row:1!important;transform:none!important;margin:0!important}
.view .plan-goal-grid.is-list .plan-card-top,.view .plan-project-grid.is-list .plan-card-top{position:static!important;inset:auto!important}
.view .plan-goal-grid.is-list .plan-goal-thumbnail{min-width:38px!important}
.view .plan-goal-grid.is-list .plan-goal-reference-meta time{margin:0!important}
/* 1.2.8 logo: tap the box or the button, choose, done */
.brand-logo>img,.brand-logo>span{cursor:pointer}
@media (pointer:coarse){.plan-logo-drop small{display:none}}
.pp-logo-add{display:flex;align-items:center;gap:12px;padding:12px 14px;margin:0 0 12px;border:1.5px dashed color-mix(in srgb,var(--primary) 45%,transparent);border-radius:14px;background:color-mix(in srgb,var(--primary) 6%,var(--card));cursor:pointer}
.pp-logo-add>.ic,.pp-logo-add>svg{width:26px;height:26px;flex:none;color:var(--primary)}
.pp-logo-add span{flex:1;min-width:0;display:grid;gap:2px}.pp-logo-add b{font-size:14px}.pp-logo-add small{font-size:12px;color:var(--muted)}
.pp-logo-add em{font-style:normal;font-size:13px;font-weight:600;color:var(--on-primary,#111);background:var(--primary);padding:8px 12px;border-radius:10px;white-space:nowrap}

/* Projects as a list (same compact rows as goals) */
.view .plan-project-grid.is-list{display:flex!important;flex-direction:column;gap:8px!important}
.view .plan-project-grid.is-list .plan-project{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center;gap:0 10px!important;padding:10px 14px!important;min-height:0!important}
.view .plan-project-grid.is-list .plan-goal-reference-main{grid-column:1!important;grid-row:1!important;padding:0!important;min-width:0;text-align:start}
.view .plan-project-grid.is-list .plan-card-top{grid-column:2!important;grid-row:1!important;padding:0!important;gap:6px!important;flex-wrap:nowrap!important}
.view .plan-project-grid.is-list .plan-card-top .grow,.view .plan-project-grid.is-list .plan-goal-reference-heading p,.view .plan-project-grid.is-list .plan-goal-reference-meta span,.view .plan-project-grid.is-list .plan-goal-reference-track .btn,.view .plan-project-grid.is-list .plan-goal-reference-numbers,.view .plan-project-grid.is-list .plan-goal-photo{display:none!important}
.view .plan-project-grid.is-list .plan-goal-reference-heading{display:flex!important;align-items:center;gap:10px;margin:0!important}
.view .plan-project-grid.is-list .plan-goal-thumbnail{width:38px!important;height:38px!important;flex:none;border-radius:10px!important}
.view .plan-project-grid.is-list .plan-goal-reference-heading h2{font-size:15px!important;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.view .plan-project-grid.is-list .plan-goal-reference-meta{margin:2px 0 0!important;padding:0!important;border:0!important;font-size:12px}
.view .plan-project-grid.is-list .plan-goal-reference-track{grid-column:1 / -1!important;grid-row:2!important;margin:8px 0 0!important;padding:0!important}
.view .plan-project-grid.is-list .plan-goal-reference-track .plan-progress{height:3px!important;margin:0!important;flex:1}
.view .plan-project-grid.is-list .plan-display-grip{position:static!important;inset:auto!important;grid-column:3!important;grid-row:1!important;transform:none!important;margin:0!important}
.view .plan-project-grid.is-list .plan-card-top,.view .plan-project-grid.is-list .plan-card-top{position:static!important;inset:auto!important}
.view .plan-project-grid.is-list .plan-goal-thumbnail{min-width:38px!important}
.view .plan-project-grid.is-list .plan-goal-reference-meta time{margin:0!important}
.view .plan-project-grid.is-list .plan-next,.view .plan-project-grid.is-list .plan-project-percent,.view .plan-project-grid.is-list .plan-project-card-phases{display:none!important}
.view .plan-project-grid.is-list .plan-goal-reference-meta{display:flex!important}
.view .plan-project-grid.is-list .plan-goal-reference-heading>div,.view .plan-goal-grid.is-list .plan-goal-reference-heading>div{flex:1 1 auto!important;min-width:0!important;width:auto!important;max-width:none!important}
.view .plan-project-grid.is-list .plan-goal-reference-heading,.view .plan-goal-grid.is-list .plan-goal-reference-heading{padding:0!important}

/* Today: the activities list scrolls with the page (no small inner scroll box) */
.view-today .plan-day-list,.view-actions .plan-day-list{max-height:none!important;overflow:visible!important;overscroll-behavior:auto!important}

/* Plan Pro Team (test) */
.pt-sheet{display:grid;gap:14px}
.pt-intro{margin:0;font-size:13px;line-height:1.9;color:var(--muted)}
.pt-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.pt-add input[type=email]{grid-column:1 / -1;min-height:46px}
.pt-add select{min-height:44px}
.pt-add .btn{min-height:44px}
.pt-crew-hint{margin:0;font-size:12px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.pt-members{display:grid;gap:10px}
.pt-member{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--card);display:grid;gap:8px}
.pt-member-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pt-member-head b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pt-member-row select{width:100%;min-height:42px}
.pt-phases{display:flex;flex-wrap:wrap;gap:6px 14px}
.pt-phases label{display:flex;align-items:center;gap:6px;font-size:13px}
.pt-status{font-size:12px;color:var(--muted)}
.pt-member-actions{display:flex;gap:6px}
.pt-send{display:flex;flex-direction:column;gap:6px;align-items:stretch}
.pt-send .btn{min-height:48px;justify-content:center}
.pt-send small{text-align:center}
.pt-invite .btn{width:100%;justify-content:center}
.pt-empty{margin:0;text-align:center;padding:8px 0}
.pt-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--on-primary,#111);background:var(--primary);border-radius:999px;padding:2px 8px;margin-bottom:4px;width:max-content}
.pt-badge.own{background:var(--s2);color:var(--ink2)}
.pt-badge .ic,.pt-badge svg{width:13px;height:13px}
.pt-banner{display:flex;gap:12px;align-items:flex-start;border:1px solid color-mix(in srgb,var(--primary) 45%,var(--line));background:color-mix(in srgb,var(--primary) 9%,var(--card));border-radius:14px;padding:12px 14px;margin:0 0 12px}
.pt-banner>i{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--primary);color:var(--on-primary,#111)}
.pt-banner>i svg{width:18px;height:18px}
.pt-banner div{display:grid;gap:3px;min-width:0}
.pt-banner b{font-size:14px}
.pt-banner small{font-size:12px;color:var(--muted);line-height:1.7}
/* A received copy shows only the member's own money; crew and gear stay with the owner */
.view:has(.pt-banner) [data-a="ws:sub"][data-t="crew"],.view:has(.pt-banner) [data-a="ws:sub"][data-t="gear"]{display:none!important}
/* v2 */
.pt-member.declined{opacity:.6}
.pt-member-head>div{display:grid;gap:2px;min-width:0}
.pt-member-head small{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}
.pt-member-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pt-member-grid label{display:grid;gap:4px;font-size:12px;color:var(--muted)}
.pt-member-grid select,.pt-member-grid input{min-height:42px;width:100%}
.pt-sheet-actions{display:grid;gap:8px}
.pt-sheet-actions .btn{width:100%;justify-content:center}
.pill.on{outline:2px solid var(--primary)}
.pt-pay{color:var(--ink)!important}
.pt-pay b{color:var(--primary)}
.pt-rsvp{display:grid;gap:6px;margin:4px 0}
.pt-rsvp>div{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;font-size:12px}
.pt-rsvp-btns{display:flex;gap:6px}
.pt-rsvp-btns button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:5px 12px;font:inherit;font-size:12px}
.pt-rsvp-btns button.on{background:var(--primary);color:var(--on-primary,#111);border-color:var(--primary)}
.pt-rsvp-btns button.on.no{background:var(--red,#c0392b);color:#fff;border-color:transparent}
.pt-banner-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.pt-invites{display:grid;gap:10px;margin:0 0 14px}
.pt-invite-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 12px;align-items:center;border:1.5px solid var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--card));border-radius:16px;padding:14px}
.pt-invite-card>i{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--primary);color:var(--on-primary,#111)}
.pt-invite-card>i svg{width:20px;height:20px}
.pt-invite-card>div{display:grid;gap:3px}
.pt-invite-card small{color:var(--muted);font-size:12px}
.pt-invite-card>span{grid-column:1 / -1;display:grid;grid-template-columns:2fr 1fr;gap:8px}
.pt-invite-card>span .btn{min-height:44px;justify-content:center}
.pt-roster{display:grid;gap:8px}
.pt-roster-row{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.pt-roster-row small{color:var(--muted)}
.pt-roster-row.owner{border-color:var(--primary)}
.pt-chat{display:grid;gap:10px}
.pt-chat-list{display:grid;gap:8px;max-height:55vh;overflow:auto;padding:2px}
.pt-msg{border:1px solid var(--line);border-radius:14px;padding:8px 12px;background:var(--card);max-width:88%}
.pt-msg.mine{justify-self:end;background:color-mix(in srgb,var(--primary) 12%,var(--card));border-color:color-mix(in srgb,var(--primary) 40%,var(--line))}
.pt-msg-head{display:flex;align-items:center;gap:6px}
.pt-msg-head b{font-size:13px}
.pt-msg-head small{font-size:11px;color:var(--muted);flex:1}
.pt-msg-head .icon-btn{width:28px;height:28px;min-width:28px}
.pt-msg p{margin:4px 0 0;font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}
.pt-chat-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}
.pt-chat-form textarea{min-height:48px;resize:vertical}
.pt-chat-form .btn{min-height:48px}
.pt-name-sheet form{display:grid;gap:12px}
.pt-name-sheet input{min-height:46px}

/* v3: team inside the project */
.pt-team-card{display:grid;gap:10px}
.pt-team-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pt-team-card-head b{display:flex;align-items:center;gap:6px;font-size:15px}
.pt-team-card-head b svg{width:18px;height:18px;color:var(--primary)}
.pt-team-card p{margin:0;font-size:13px;line-height:1.8}
.pt-chips{display:flex;flex-wrap:wrap;gap:8px}
.pt-chip{display:grid;gap:1px;border:1px solid var(--line);border-radius:12px;padding:6px 10px;background:var(--card)}
.pt-chip.accepted{border-color:color-mix(in srgb,var(--green,#2e9d5b) 55%,var(--line))}
.pt-chip.invited{border-style:dashed}
.pt-chip b{font-size:13px}.pt-chip small{font-size:11px;color:var(--muted)}
.pt-team-page{display:grid;gap:12px}
.pt-team-page .pt-sheet{gap:14px}
.pt-sync{display:flex;align-items:center;justify-content:center;gap:6px}
.pt-sync svg{width:14px;height:14px;color:var(--green,#2e9d5b)}
.pt-chat-section .plan-section-head h2{display:flex;align-items:center;gap:6px}
.pt-chat-section .pt-chat-list{max-height:none}
/* v4: crew = team, fees, stage notes */
.pt-fees{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pt-fees>div{border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:var(--card);display:grid;gap:2px;min-width:0}
.pt-fees small{font-size:11px;color:var(--muted)}
.pt-fees b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pt-add{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.pt-add input{min-height:44px}
.pt-add .btn{grid-column:1 / -1;justify-content:center}
.pt-member.plain{border-style:dashed}
.pt-invite-crew{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.pt-invite-crew input{min-height:42px}
.pt-by{font-size:11px;color:var(--muted);line-height:1.6}
.pt-by b{color:var(--ink);font-size:12px}
.pt-notes{display:grid;gap:10px}
.pt-notes-list{display:grid;gap:8px}
.pt-note{position:relative;border:1px solid var(--line);border-inline-start:3px solid var(--primary);border-radius:12px;padding:8px 12px 8px 40px;background:var(--card)}
.pt-note p{margin:2px 0 0;font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}
.pt-note .icon-btn{position:absolute;left:6px;top:6px;width:28px;height:28px;min-width:28px}
.pt-note-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}
.pt-note-form textarea{min-height:46px;resize:vertical}
.pt-note-form .btn{min-height:46px}
@media (max-width:420px){.pt-fees b{font-size:12px}}
.pt-warn{border:1px solid color-mix(in srgb,var(--red,#c0392b) 50%,var(--line));background:color-mix(in srgb,var(--red,#c0392b) 10%,var(--card));border-radius:12px;padding:10px 12px;line-height:1.9}
.pt-warn svg{width:16px;height:16px;vertical-align:-3px}
/* v6: one team view for everyone — small rows, owner taps a person for a sheet */
.pt-team{display:grid;gap:10px}
.pt-team-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pt-team-head .btn.sm{min-height:34px;padding:4px 12px;font-size:13px}
.pt-rows{display:grid;gap:2px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card)}
.pt-row{all:unset;box-sizing:border-box;display:grid;grid-template-columns:32px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 12px;min-height:50px;border-bottom:1px solid var(--line);cursor:default;color:var(--ink)}
.pt-row:last-child{border-bottom:0}
button.pt-row{cursor:pointer}button.pt-row:active{background:var(--s2)}
.pt-row>svg{width:14px;height:14px;color:var(--muted)}
.pt-row.me{background:color-mix(in srgb,var(--primary) 7%,transparent)}
.pt-ava{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:700;font-size:14px;background:var(--s2);color:var(--ink2,var(--ink))}
.pt-ava.owner{background:var(--primary);color:var(--on-primary,#111)}
.pt-ava.accepted{box-shadow:0 0 0 2px color-mix(in srgb,var(--green,#2e9d5b) 70%,transparent)}
.pt-ava.invited{box-shadow:0 0 0 2px var(--line);opacity:.85}
.pt-ava.declined{opacity:.45}
.pt-row-main{display:grid;gap:1px;min-width:0}
.pt-row-main b{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pt-row-main small{font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pt-row-fee{display:grid;justify-items:end;gap:1px}
.pt-row-fee b{font-size:12.5px;font-weight:600;white-space:nowrap}
.pt-row-fee small{font-size:10.5px;color:var(--muted);white-space:nowrap}
.pt-fees>div{padding:6px 10px}
.pt-fees b{font-size:13px}
.pt-foot{display:block;font-size:12px;line-height:1.8}
.pt-link{all:unset;cursor:pointer;color:var(--primary);font-size:12.5px;padding:4px 0}
.pt-link.danger{color:var(--red,#c0392b)}
.pt-person-sheet form{display:grid;gap:10px}
.pt-person-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pt-person-grid label{display:grid;gap:3px;font-size:12px;color:var(--muted)}
.pt-person-grid input,.pt-person-grid select{min-height:40px;width:100%;font-size:16px}
.pt-person-info{font-size:12px;color:var(--muted);line-height:1.7}
.pt-person-sheet .pt-phases{display:grid;gap:4px}
.pt-person-sheet .pt-phases>small{font-size:12px;color:var(--muted)}
.pt-person-actions{display:flex;gap:8px}
.pt-person-actions .btn{min-height:40px;flex:1;justify-content:center}
.pt-person-more{display:flex;flex-wrap:wrap;gap:4px 16px;border-top:1px solid var(--line);padding-top:6px}
.pt-team-card .pt-fees{display:none}
.pt-team-card .pt-row{min-height:44px;padding:6px 12px}
.pt-fees b{white-space:normal!important;overflow:visible!important;font-size:12.5px;line-height:1.5}
/* v7: crew = team in its own tab; stages are plain tabs */
[data-a="ws:sub"][data-t="crew"]{display:none!important}
.pt-team-toggle{display:flex;align-items:center;gap:8px;font-size:13px}
.pt-email-row{display:grid;gap:3px;font-size:12px;color:var(--muted)}
.pt-email-row input{min-height:40px;font-size:16px}
/* v8: team part inside Plan Pro's crew form; four figures in project money */
.pt-crew-team{display:grid;gap:8px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-top:10px}
.pt-crew-team-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pt-crew-team-head svg{width:16px;height:16px;color:var(--primary)}
.pt-crew-team-head b{font-size:13px}.pt-crew-team-head small{font-size:12px;color:var(--muted);margin-inline-start:auto}
.pt-crew-team .pt-phases{display:grid;gap:4px}.pt-crew-team .pt-phases>small{font-size:12px;color:var(--muted)}
.pt-crew-pay{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;font-size:12px;color:var(--muted)}
.money-strip.pt-money4{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
.money-strip.pt-money4>div{order:1}
.money-strip.pt-money4>div:nth-child(4){order:2}.money-strip.pt-money4>div:nth-child(2){order:3}.money-strip.pt-money4>div:nth-child(3){order:4}
.money-strip.pt-money4>.hl{display:none!important}
@media (min-width:900px){.money-strip.pt-money4{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
.pt-stagebar{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:8px;margin:0 0 12px}
.pt-stagebar button{all:unset;box-sizing:border-box;cursor:pointer;display:grid;justify-items:center;gap:2px;padding:9px 6px;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);text-align:center}
.pt-stagebar button svg{width:18px;height:18px;color:var(--muted)}
.pt-stagebar button b{font-size:13px;font-weight:600}
.pt-stagebar button small{font-size:11px;color:var(--muted)}
.pt-stagebar button.on{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--card))}
.pt-stagebar button.on svg{color:var(--primary)}
.pt-team-page .pt-chat-section{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:12px;margin-top:4px}
.pt-sub-h{display:flex;align-items:center;gap:6px;margin:0;font-size:15px}.pt-sub-h svg{width:17px;height:17px;color:var(--primary)}
.pt-invite-facts{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.pt-invite-facts>span{display:grid;gap:1px;border:1px solid var(--line);border-radius:10px;padding:6px 10px;background:var(--card);min-width:0}
.pt-invite-facts small{font-size:11px;color:var(--muted)}.pt-invite-facts b{font-size:13px;overflow-wrap:anywhere}
/* v9: stages as tabs; one simple list per part */
.pt-stagebar{display:flex;gap:0;overflow-x:auto;border-bottom:1px solid var(--line);margin:0 0 12px;scrollbar-width:none}
.pt-stagebar::-webkit-scrollbar{display:none}
.pt-stagebar button{all:unset;box-sizing:border-box;cursor:pointer;flex:1 0 auto;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;border-bottom:2.5px solid transparent;color:var(--muted);font-size:14px;white-space:nowrap;border-radius:0;background:none}
.pt-stagebar button svg{width:17px;height:17px}
.pt-stagebar button b{font-weight:600}
.pt-stagebar button small{font-size:11px;color:var(--muted);background:var(--s2);border-radius:999px;padding:1px 7px}
.pt-stagebar button.on{color:var(--ink);border-bottom-color:var(--primary)}
.pt-stagebar button.on svg{color:var(--primary)}
.pt-sec{display:grid;gap:8px}
.pt-items{display:grid;gap:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--card)}
.pt-items:has(.pt-empty){border-style:dashed}
.pt-item{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--line)}
.pt-item:last-child{border-bottom:0}
.pt-item>span{display:grid;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.pt-item>span small{font-size:12px;color:var(--muted)}
.pt-item.done>span{color:var(--muted);text-decoration:line-through}
.pt-item .icon-btn{width:30px;height:30px;min-width:30px;opacity:.6}
.pt-tick{all:unset;box-sizing:border-box;cursor:pointer;width:26px;height:26px;border-radius:8px;border:1.5px solid var(--line);display:grid;place-items:center}
.pt-tick svg{width:16px;height:16px}
.pt-item.done .pt-tick{background:var(--primary);border-color:var(--primary);color:var(--on-primary,#111)}
.pt-tick[disabled]{cursor:default;opacity:.8}
.pt-item-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}
.pt-item-add input{min-height:40px;font-size:16px}
.pt-other summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:4px 0}
.pt-wages{display:grid;gap:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.pt-wage{all:unset;box-sizing:border-box;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid var(--line)}
.pt-wage:last-child{border-bottom:0}.pt-wage:active{background:var(--s2)}
.pt-wage span{display:grid;gap:1px;min-width:0}.pt-wage b{font-size:14px;font-weight:600}.pt-wage small{font-size:11.5px;color:var(--muted)}
.pt-wage-amt{justify-items:end;text-align:end}.pt-wage-amt small.pos{color:var(--green,#2e9d5b)}
.money-strip.pt-money4>div small{display:none}
.pt-stagebar button,.pt-stagebar button.on{border:0;border-bottom:2.5px solid transparent;border-radius:0;background:none}
.pt-stagebar button.on{border-bottom-color:var(--primary)}
.plan-page-widget .pt-sec>.plan-section-head h2{display:none}
.plan-page-widget .pt-sec>.plan-section-head{justify-content:flex-end;min-height:0}
/* v10 */
.m-bar{position:sticky;top:0}
.pt-item.has-media{grid-template-columns:30px minmax(0,1fr) auto;row-gap:4px}
.pt-item-media{grid-column:2 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.pt-item-media .thumbs{margin:0}
.pt-media-btns{display:flex;gap:2px;margin-inline-start:auto}
.pt-media-btns .icon-btn{width:30px;height:30px;min-width:30px;opacity:.7}
.pt-media-btns .icon-btn svg{width:16px;height:16px}
.pt-edit-top{display:grid;gap:10px}
.pt-edit-actions .btn-row{display:flex;gap:8px}.pt-edit-actions .btn{flex:1;justify-content:center;min-height:42px}
.pt-edit-plan{border:1px solid var(--line);border-radius:12px;padding:0 12px}
.pt-edit-plan summary{display:flex;align-items:center;gap:8px;padding:10px 0;cursor:pointer;list-style:none}
.pt-edit-plan summary::-webkit-details-marker{display:none}
.pt-edit-plan summary svg{width:17px;height:17px;color:var(--muted)}
.pt-edit-plan[open] summary>svg:last-child{transform:rotate(-90deg)}
.pt-edit-plan-body{display:grid;gap:10px;padding-bottom:12px}
.pt-resolve summary svg:first-child{color:#e8a33d}
.i-resolve{stroke-width:1.6}
.pt-worked{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--muted)}
.pt-worked svg{width:13px;height:13px}
.pt-day-project{border:1px solid color-mix(in srgb,var(--pc) 45%,var(--line));border-radius:14px;overflow:hidden;margin:0 0 10px;background:color-mix(in srgb,var(--pc) 5%,var(--card))}
.pt-day-project-head{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:8px;width:100%;padding:9px 12px;background:color-mix(in srgb,var(--pc) 16%,transparent);border-inline-start:4px solid var(--pc)}
.pt-day-project-head svg{width:17px;height:17px;color:var(--pc)}
.pt-day-project-head b{flex:1;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pt-day-project-head small{font-size:12px;color:var(--muted)}
.pt-live{display:inline-flex;align-items:center;gap:3px;color:var(--pc)!important;font-weight:600}
.pt-day-project-rows{padding:4px 8px 6px}
/* Top and bottom bars: matte "liquid glass" — content shows softly through a frosted, slightly tinted layer */
.m-bar,.m-tabs{background:color-mix(in srgb,var(--bg) 94%,var(--ink) 2%)!important}
.m-bar{border-bottom:.5px solid color-mix(in srgb,var(--ink) 12%,transparent)!important;box-shadow:inset 0 -1px 0 color-mix(in srgb,#fff 5%,transparent),0 6px 18px -12px rgba(0,0,0,.35)!important;z-index:50}
.m-tabs{border-top:.5px solid color-mix(in srgb,var(--ink) 12%,transparent)!important;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 7%,transparent),0 -6px 18px -12px rgba(0,0,0,.35)!important;z-index:50}

/* v11 */
.pt-chat-wrap .pt-sub-h{display:none}
.pt-chat-wrap .pt-chat-section{border-top:0!important;padding-top:0!important;margin-top:0!important}
.pt-nav-child{padding-inline-start:28px!important}
.pt-nav-child i{transform:scale(.85)}
.pt-steps .pt-item-add{margin-top:2px}
.pt-edit-plan-body{display:grid;gap:10px}
.pt-edit-plan-body .list-h{display:flex;align-items:center;gap:6px;margin:6px 0 0}
.pt-edit-plan-body .list-h svg{width:16px;height:16px;color:var(--muted)}
/* v12: fixed tops per page (top bar + the page's own header stay put while the list scrolls) */
.pt-sticky{position:sticky;top:var(--pt-bar-h,64px);z-index:30;background:var(--bg);margin-inline:-12px;padding:0 12px 8px;box-shadow:0 1px 0 var(--line)}
.pt-sticky>*{margin-top:0}
.pt-sticky .plan-week-strip{margin-top:6px}
.pt-overview-stages{display:grid;gap:8px}
.pt-ov-stage{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;border:1px solid color-mix(in srgb,var(--sc) 45%,var(--line));background:color-mix(in srgb,var(--sc) 9%,var(--card))}
.pt-ov-stage>i{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--sc);color:#fff;font-style:normal}
.pt-ov-stage>i svg{width:18px;height:18px}
.pt-ov-stage b{flex:1;font-size:15px}
.pt-ov-stage small{font-size:12px;color:var(--muted)}
.pt-ov-stage>svg{width:16px;height:16px;color:var(--muted)}
.pt-sticky .plan-review-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.pt-sticky .plan-review-buttons>button{display:flex!important;flex-direction:row!important;align-items:center;justify-content:center;gap:6px;min-height:40px}
/* v13: each stage = coloured bars (its parts, its steps, team notes), opened in place */
.pt-parts{display:grid;gap:8px}
.pt-part{border-radius:14px;border:1px solid color-mix(in srgb,var(--pc) 40%,var(--line));background:color-mix(in srgb,var(--pc) 7%,var(--card));overflow:hidden}
.pt-part>summary{list-style:none;display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;border-inline-start:4px solid var(--pc);-webkit-tap-highlight-color:transparent}
.pt-part>summary::-webkit-details-marker{display:none}
.pt-part>summary>i{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:var(--pc);color:#fff;font-style:normal;flex:none}
.pt-part>summary>i svg{width:17px;height:17px}
.pt-part>summary>b{flex:1;font-size:15px;font-weight:600}
.pt-part>summary>small{font-size:12px;color:var(--muted)}
.pt-part>summary>svg:last-child{width:16px;height:16px;color:var(--muted);transition:transform .2s}
.pt-part[open]>summary>svg:last-child{transform:rotate(-90deg)}
.pt-part-body{padding:4px 10px 12px}
.pt-part-body .pt-sec>.plan-section-head h2{display:none}
.pt-part-body .pt-sec>.plan-section-head{justify-content:flex-end;min-height:0}
.pt-part-body>.plan-section,.pt-part-body .card{margin:0}
.pt-stage-block{display:grid;gap:8px}
/* v13: smoother scrolling on iPhone — fixed bars on their own layers, no repaint while the page moves */
.m-tabs,.pt-sticky,.m-fab{-webkit-transform:translateZ(0);transform:translateZ(0);will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}
.pt-sticky{box-shadow:none;border-bottom:0}
/* v14 */
.pt-sticky{box-shadow:none!important;border-bottom:0!important}
.pt-sticky .plan-review-buttons>button{min-height:32px!important;padding-block:4px!important;font-size:13px}
.pt-sticky .plan-review-buttons>button svg{width:16px;height:16px}
.pt-sticky .plan-review-buttons{margin-top:6px;gap:6px}
.pt-chat-btn{position:relative}
.pt-chat-btn.unread::after{content:"";position:absolute;top:6px;inset-inline-end:6px;width:9px;height:9px;border-radius:50%;background:var(--red,#e5534b);box-shadow:0 0 0 2px var(--bg)}
.pt-ai-simple{display:grid;gap:8px;border:1px solid color-mix(in srgb,var(--primary) 45%,var(--line));border-radius:16px;padding:12px 14px;margin:0 0 12px;background:color-mix(in srgb,var(--primary) 6%,var(--card))}
.pt-ai-simple h3{display:flex;align-items:center;gap:6px;margin:0;font-size:16px}.pt-ai-simple h3 svg{width:18px;height:18px;color:var(--primary)}
.pt-ai-simple p{margin:0;font-size:13px;line-height:1.9}
.pt-ai-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.pt-ai-row input{min-height:42px;font-size:16px}
.pt-ai-row2{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.pt-ai-status{font-size:12.5px;color:var(--ink)}
.pt-ai-adv{border:1px solid var(--line);border-radius:14px;padding:0 12px}
.pt-ai-adv>summary{cursor:pointer;padding:10px 0;font-size:13px;color:var(--muted)}
.pt-ai-adv[open]{padding-bottom:12px}
/* v15: team chat in a small floating window */
.pt-chat-pop{--pcp-h:min(470px,calc(var(--plan-visible-height,100dvh) - 150px));position:fixed;z-index:9000;inset-inline-end:12px;width:min(380px,calc(100vw - 24px));height:var(--pcp-h);top:calc(var(--plan-visible-top,0px) + var(--plan-visible-height,100dvh) - var(--pcp-h) - 96px - env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;background:var(--card);color:var(--ink);border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);border-radius:22px;box-shadow:0 24px 60px -12px rgba(0,0,0,.55),0 4px 14px rgba(0,0,0,.25);overflow:hidden;opacity:0;transform:translateY(14px) scale(.98);transition:opacity .18s ease,transform .18s ease}
.pt-chat-pop.on{opacity:1;transform:none}
html.pp-kb .pt-chat-pop{--pcp-h:min(420px,calc(var(--plan-visible-height,100dvh) - 24px));top:calc(var(--plan-visible-top,0px) + var(--plan-visible-height,100dvh) - var(--pcp-h) - 8px)}
.pt-chat-pop-head{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--ink) 9%,transparent)}
.pt-chat-pop-ic{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 18%,transparent);color:var(--primary);flex:0 0 34px}
.pt-chat-pop-ic svg{width:18px;height:18px}
.pt-chat-pop-t{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.35}
.pt-chat-pop-t small{color:var(--muted,#999);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pt-chat-pop-body{flex:1;min-height:0;display:flex;flex-direction:column;margin:0!important;border:0!important;background:transparent!important;padding:0!important}
.pt-chat-pop-body .pt-chat-list{flex:1;min-height:0;max-height:none!important;overflow-y:auto;padding:10px 12px;overscroll-behavior:contain}
.pt-chat-pop-body .pt-chat-form{padding:8px 10px calc(8px + 0px);border-top:1px solid color-mix(in srgb,var(--ink) 9%,transparent);margin:0!important}
.pt-chat-pop-body .pt-chat-form textarea{min-height:42px;max-height:120px}
html.pt-glass .pt-chat-pop{background:var(--lg-tint-strong)!important;-webkit-backdrop-filter:blur(26px) saturate(180%);backdrop-filter:blur(26px) saturate(180%)}
.pt-chat-pop-body .pt-chat-list{display:flex!important;flex-direction:column!important;gap:8px;align-items:stretch}
.pt-chat-pop .pt-msg{flex:0 0 auto!important;min-height:0!important;height:auto!important;margin:0!important;padding:8px 11px!important;border-radius:16px!important;max-width:88%;align-self:flex-start;background:color-mix(in srgb,var(--ink) 6%,transparent)!important;border:0!important}
.pt-chat-pop .pt-msg.mine{align-self:flex-end;background:color-mix(in srgb,var(--primary) 16%,transparent)!important}
.pt-chat-pop .pt-msg p{margin:2px 0 0!important;line-height:1.7}
.pt-chat-pop .pt-msg-head{display:flex;align-items:center;gap:6px;justify-content:space-between}
.pt-chat-pop .pt-msg-head .icon-btn{width:26px;height:26px;min-height:0;padding:0}
.pt-chat-pop .pt-msg-head .icon-btn svg{width:14px;height:14px}
.pt-chat-pop .pt-by{font-size:11.5px}
html.pt-glass .pt-chat-pop{background:color-mix(in srgb,var(--card) 96%,transparent)!important}
body.pt-pop-open .m-fab{display:none!important}

/* Plan Pro 5 */
html.pp-kb .m-tabs,html.pp-kb .m-fab,html.pp-kb .plan-mobile-tabbar{display:none!important}
.pp5-skin-note{font-size:13px;line-height:1.8;margin:6px 2px 0}
.pp5-latin{font-family:-apple-system,"SF Pro Display","SF Pro Text",system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;font-feature-settings:normal;unicode-bidi:isolate}
.pp5-glass-level{margin:14px 2px 4px;padding:12px 14px;border-radius:16px;background:color-mix(in srgb,var(--ink) 5%,transparent)}
.pp5-gl-ends{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--muted,inherit);margin-bottom:8px}
.pp5-gl-val{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;font-family:-apple-system,system-ui,sans-serif}
.pp5-glass-level input[type=range]{width:100%;accent-color:var(--primary);height:28px}
.pp5-glass-level input[type=range]{direction:ltr;touch-action:none;-webkit-tap-highlight-color:transparent}
.pp5-gl-ends{direction:ltr}
/* Liquid Glass: stronger glass at the clear end, and a real glass look on the light theme too */
html.pt-glass{--lg-edge:color-mix(in srgb,#fff calc(14% + var(--lg-clear,.5) * 22%),transparent)}
html.pt-glass[data-glass-clear="1"] :is(.plan-fin-widget,.plan-page-widget,.card,.plan-section.pt-team,.pt-day-project){box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 22%,transparent),inset 0 0 0 .5px color-mix(in srgb,#fff 14%,transparent),0 10px 30px -18px rgba(0,0,0,.5)!important}
html.pt-glass[data-appearance="light"] body{background:radial-gradient(800px 520px at 100% -6%,color-mix(in srgb,var(--primary) 30%,transparent),transparent 62%),radial-gradient(700px 520px at -10% 40%,rgba(120,160,255,.22),transparent 60%),radial-gradient(760px 520px at 60% 108%,rgba(255,140,190,.16),transparent 62%),var(--bg)!important;background-attachment:fixed!important}
html.pt-glass[data-appearance="light"] :is(.plan-fin-widget,.plan-page-widget,.card,.plan-section.pt-team,.pt-day-project){border:.5px solid rgba(255,255,255,.85)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 10px 28px -14px rgba(30,40,70,.28)!important}
html.pt-glass[data-appearance="light"] :is(.m-bar,.m-tabs,.modal,.plan-fin-drawer,.pt-chat-pop){border-color:rgba(255,255,255,.8)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 12px 34px -14px rgba(30,40,70,.3)!important}
html.pt-glass[data-appearance="light"] .m-tabs>button.on{background:rgba(255,255,255,.7)!important}
.pp5-glass-level input[type=range]{-webkit-appearance:auto;appearance:auto;border:0!important;background:transparent!important;padding:0!important;box-shadow:none!important;min-height:0!important;height:30px!important;margin:0}
html.pt-glass[data-appearance="dark"] body{background:radial-gradient(820px 540px at 100% -6%,color-mix(in srgb,var(--primary) 24%,transparent),transparent 62%),radial-gradient(700px 520px at -12% 45%,rgba(90,120,255,.16),transparent 60%),radial-gradient(760px 520px at 60% 108%,rgba(200,90,170,.12),transparent 62%),var(--bg)!important;background-attachment:fixed!important}

html.pt-glass{
 --lg-tint:color-mix(in srgb,var(--card) 58%,transparent);
 --lg-tint-strong:color-mix(in srgb,var(--card) 80%,transparent);
 --lg-edge:color-mix(in srgb,#fff 16%,transparent);
 --lg-edge-soft:color-mix(in srgb,var(--ink) 10%,transparent);
 --lg-shine:inset 0 1px 0 color-mix(in srgb,#fff 18%,transparent),inset 0 -1px 0 color-mix(in srgb,#000 10%,transparent);
 --lg-shadow:0 10px 30px -12px color-mix(in srgb,#000 55%,transparent),0 2px 8px -4px color-mix(in srgb,#000 30%,transparent);
 --lg-blur:blur(26px) saturate(180%);
 --lg-fill:color-mix(in srgb,var(--ink) 7%,transparent);
 --lg-fill-2:color-mix(in srgb,var(--ink) 11%,transparent);
 --lg-r-xl:26px;--lg-r-l:20px;--lg-r-m:14px;--lg-r-s:10px;
 --lg-ease:cubic-bezier(.2,.8,.2,1);
}html.pt-glass body{background:radial-gradient(900px 520px at 100% -8%,color-mix(in srgb,var(--primary) 13%,transparent),transparent 62%),radial-gradient(700px 480px at -12% 104%,color-mix(in srgb,var(--primary) 7%,transparent),transparent 60%),var(--bg)!important;background-attachment:fixed!important;-webkit-font-smoothing:antialiased}html.pt-glass b,html.pt-glass strong,html.pt-glass .num,html.pt-glass [class*="money"] b,html.pt-glass .pt-fees b,html.pt-glass .month-sum b{font-variant-numeric:tabular-nums}html.pt-glass h1{letter-spacing:-.01em}html.pt-glass .m-bar{background:var(--lg-tint)!important;-webkit-backdrop-filter:var(--lg-blur)!important;backdrop-filter:var(--lg-blur)!important;border-bottom:.5px solid var(--lg-edge-soft)!important;box-shadow:none!important}html.pt-glass .m-bar .m-nb,html.pt-glass .m-bar .icon-btn,html.pt-glass .m-bar .m-heart{border-radius:999px!important;background:var(--lg-fill)!important;border:.5px solid var(--lg-edge)!important;box-shadow:var(--lg-shine)!important;transition:transform .25s var(--lg-ease),background .25s}html.pt-glass .m-bar .m-nb:active,html.pt-glass .m-bar .icon-btn:active{transform:scale(.92)}html.pt-glass .m-tabs{left:12px!important;right:12px!important;bottom:calc(var(--plan-safe-bottom,env(safe-area-inset-bottom)) + 8px)!important;top:auto!important;width:auto!important;border-radius:32px!important;padding:6px!important;background:var(--lg-tint)!important;-webkit-backdrop-filter:var(--lg-blur)!important;backdrop-filter:var(--lg-blur)!important;border:.5px solid var(--lg-edge)!important;box-shadow:var(--lg-shine),var(--lg-shadow)!important;gap:2px}html.pt-glass .m-tabs>button{border-radius:26px!important;transition:background .3s var(--lg-ease),color .3s,transform .25s var(--lg-ease);padding-block:7px!important}html.pt-glass .m-tabs>button.on{background:color-mix(in srgb,var(--primary) 20%,transparent)!important;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 14%,transparent)}html.pt-glass .m-tabs>button:active{transform:scale(.94)}html.pt-glass .view{padding-bottom:calc(118px + var(--plan-safe-bottom,env(safe-area-inset-bottom)))!important}html.pt-glass .m-fab{background:color-mix(in srgb,var(--primary) 82%,transparent)!important;-webkit-backdrop-filter:var(--lg-blur);backdrop-filter:var(--lg-blur);border:.5px solid color-mix(in srgb,#fff 35%,transparent)!important;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 45%,transparent),0 12px 28px -10px color-mix(in srgb,var(--primary) 70%,#000)!important;bottom:calc(var(--plan-safe-bottom,env(safe-area-inset-bottom)) + 92px)!important;transition:transform .25s var(--lg-ease)}html.pt-glass .m-fab:active{transform:scale(.92)}html.pt-glass .plan-fin-widget,html.pt-glass .plan-page-widget,html.pt-glass .card,html.pt-glass .plan-section.pt-team,html.pt-glass .pt-day-project{border-radius:var(--lg-r-xl)!important;background:var(--lg-tint-strong)!important;border:.5px solid var(--lg-edge-soft)!important;box-shadow:var(--lg-shine)!important;overflow:hidden}html.pt-glass .plan-page-widget .plan-section,html.pt-glass .plan-page-widget .card{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important}html.pt-glass .plan-fin-widget-header{background:transparent!important;color:var(--ink)!important;border:0!important;padding-block:12px 6px!important}html.pt-glass .plan-fin-widget-header b,html.pt-glass .plan-fin-widget-title b{color:var(--ink)!important;font-weight:650;font-size:16px;letter-spacing:-.01em}html.pt-glass .plan-fin-widget-title>i{width:30px!important;height:30px!important;border-radius:9px!important;background:var(--fin-section-color,var(--primary))!important;color:#fff!important;display:grid!important;place-items:center;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 30%,transparent)}html.pt-glass .plan-fin-widget-title>i svg{width:17px;height:17px;color:#fff!important}html.pt-glass .plan-fin-widget-header .icon-btn,html.pt-glass .plan-fin-widget-grip{color:var(--muted)!important;background:transparent!important;border:0!important}html.pt-glass .plan-fin-widget-header .plan-fin-widget-title{color:var(--ink)!important}html.pt-glass .pt-rows,html.pt-glass .pt-items,html.pt-glass .pt-wages{border-radius:var(--lg-r-l)!important;background:var(--lg-fill)!important;border:0!important}html.pt-glass .pt-row,html.pt-glass .pt-item,html.pt-glass .pt-wage{border-bottom:.5px solid var(--lg-edge-soft)!important}html.pt-glass .pt-row:last-child,html.pt-glass .pt-item:last-child,html.pt-glass .pt-wage:last-child{border-bottom:0!important}html.pt-glass button.pt-row,html.pt-glass .pt-wage{transition:background .2s}html.pt-glass button.pt-row:active,html.pt-glass .pt-wage:active{background:var(--lg-fill-2)!important}html.pt-glass .btn{border-radius:999px!important;transition:transform .2s var(--lg-ease),background .2s,box-shadow .2s;font-weight:600}html.pt-glass .btn:active{transform:scale(.97)}html.pt-glass .btn.soft,html.pt-glass .btn.ghost,html.pt-glass .btn:not(.primary):not(.danger):not(.text){background:var(--lg-fill)!important;border:.5px solid var(--lg-edge)!important;box-shadow:var(--lg-shine)!important}html.pt-glass .btn.primary{box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 35%,transparent),0 6px 16px -8px color-mix(in srgb,var(--primary) 80%,#000)!important;border:0!important}html.pt-glass .icon-btn{border-radius:999px!important;transition:transform .2s var(--lg-ease),background .2s}html.pt-glass .icon-btn:active{transform:scale(.92)}html.pt-glass input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),html.pt-glass select,html.pt-glass textarea{border-radius:var(--lg-r-m)!important;background:var(--lg-fill)!important;border:.5px solid transparent!important;transition:background .2s,border-color .2s,box-shadow .2s}html.pt-glass input:not([type=checkbox]):not([type=radio]):not([type=range]):focus,html.pt-glass select:focus,html.pt-glass textarea:focus{background:var(--lg-fill-2)!important;border-color:color-mix(in srgb,var(--primary) 60%,transparent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)!important;outline:0}html.pt-glass .subtabs,html.pt-glass .plan-project-subtabs,html.pt-glass .pt-stagebar{background:var(--lg-fill)!important;border:0!important;border-radius:var(--lg-r-m)!important;padding:3px!important;gap:2px!important}html.pt-glass .subtabs>button,html.pt-glass .pt-stagebar button{border-radius:11px!important;border:0!important;transition:background .25s var(--lg-ease),color .25s,box-shadow .25s}html.pt-glass .subtabs>button.active,html.pt-glass .pt-stagebar button.on{background:var(--lg-tint-strong)!important;color:var(--ink)!important;box-shadow:0 2px 8px -2px color-mix(in srgb,#000 35%,transparent),inset 0 1px 0 color-mix(in srgb,#fff 14%,transparent)!important;border-bottom-color:transparent!important}html.pt-glass .pt-stagebar{margin:0 0 12px!important;border-bottom:0!important}html.pt-glass .pt-stagebar button{padding:8px 10px!important}html.pt-glass .modal{border-radius:28px 28px 0 0!important;background:var(--lg-tint-strong)!important;-webkit-backdrop-filter:var(--lg-blur);backdrop-filter:var(--lg-blur);border:.5px solid var(--lg-edge)!important;box-shadow:var(--lg-shadow)!important}@media (min-width:700px){html.pt-glass .modal{border-radius:28px!important}}html.pt-glass .modal-head{background:transparent!important;position:sticky}html.pt-glass .modal-head::before{content:"";position:absolute;top:6px;left:50%;width:38px;height:5px;margin-left:-19px;border-radius:3px;background:color-mix(in srgb,var(--ink) 25%,transparent)}html.pt-glass .modal .form-actions{background:transparent!important;-webkit-backdrop-filter:var(--lg-blur);backdrop-filter:var(--lg-blur);border-top:.5px solid var(--lg-edge-soft)!important}html.pt-glass .modal-backdrop{background:color-mix(in srgb,#000 38%,transparent)!important}html.pt-glass .plan-fin-drawer{background:var(--lg-tint-strong)!important;-webkit-backdrop-filter:var(--lg-blur);backdrop-filter:var(--lg-blur);border-inline-start:.5px solid var(--lg-edge)!important}html.pt-glass .plan-fin-drawer nav button{border-radius:var(--lg-r-m)!important;transition:background .2s}html.pt-glass .plan-fin-drawer nav button[aria-current="page"]{background:color-mix(in srgb,var(--primary) 16%,transparent)!important}html.pt-glass .pt-ava{border-radius:12px!important}html.pt-glass .pt-ava.owner{border-radius:12px!important}html.pt-glass .plan-week-strip button,html.pt-glass .plan-week-strip>*{border-radius:var(--lg-r-m)!important}html.pt-glass .check{transition:transform .2s var(--lg-ease)}html.pt-glass .check:active{transform:scale(.9)}@media (prefers-reduced-motion:reduce){html.pt-glass *{transition:none!important}}html.pt-glass .plan-usability-ui .plan-fin-color-panel{border-radius:var(--lg-r-xl)!important;border:.5px solid var(--lg-edge-soft)!important;background:var(--lg-tint-strong)!important;box-shadow:var(--lg-shine)!important}html.pt-glass .plan-usability-ui .plan-fin-color-panel>.plan-fin-widget-header{background:transparent!important;color:var(--ink)!important;min-height:50px!important;padding:2px 6px!important}html.pt-glass .plan-usability-ui .plan-fin-color-panel .plan-fin-widget-title{color:var(--ink)!important;min-height:48px!important}html.pt-glass .plan-usability-ui .plan-fin-color-panel .plan-fin-widget-title b{font-weight:650!important;font-size:16px!important;letter-spacing:-.01em}html.pt-glass .plan-usability-ui .plan-fin-color-panel .plan-fin-widget-title>i{border:0!important;border-radius:9px!important;width:30px!important;height:30px!important;background:var(--fin-section-color)!important;color:#fff!important;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 30%,transparent)}html.pt-glass .plan-usability-ui .plan-fin-color-panel .plan-fin-widget-title>svg:last-child,html.pt-glass .plan-usability-ui .plan-fin-color-panel>.plan-fin-widget-header .icon-btn,html.pt-glass .plan-usability-ui .plan-fin-color-panel>.plan-fin-widget-header .plan-fin-widget-grip{color:var(--muted)!important}html.pt-glass .plan-usability-ui .plan-fin-color-panel>.plan-fin-widget-header+*{border-top:.5px solid var(--lg-edge-soft)}html.pt-glass.plan-refined-product :is(.view,html.pt-glass .view-project,html.pt-glass .view-production,html.pt-glass .view-today,html.pt-glass .view-money,html.pt-glass .modal,html.pt-glass body) .plan-fin-color-panel>.plan-fin-widget-header{background:transparent!important;color:var(--ink)!important}html.pt-glass.plan-refined-product :is(.view,html.pt-glass .modal,html.pt-glass body) .plan-fin-color-panel .plan-fin-widget-title,html.pt-glass.plan-refined-product :is(.view,html.pt-glass .modal,html.pt-glass body) .plan-fin-color-panel .plan-fin-widget-title b{color:var(--ink)!important}html.pt-glass.plan-refined-product :is(.view,html.pt-glass .modal,html.pt-glass body) .plan-resolve-section>summary{background:transparent!important;color:var(--ink)!important}html.pt-glass.plan-refined-product :is(.view,html.pt-glass .modal,html.pt-glass body) .plan-resolve-section>summary>svg:first-child{width:30px;height:30px;padding:6px;border-radius:9px;background:var(--fin-section-color,#e8a33d);color:#fff!important;box-sizing:border-box}


/* Match both daily-review controls on desktop and mobile. */
.plan-review-buttons{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.plan-review-buttons>button{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;text-align:center!important;position:relative;min-height:42px;gap:8px;padding:9px 32px!important}
.plan-review-buttons>button>span{flex:0 1 auto!important;text-align:center!important;margin:0!important}
.plan-review-buttons>button>i{display:flex;align-items:center;justify-content:center;margin:0!important;flex:none}
.plan-review-buttons>button>svg:last-child{position:absolute;inset-inline-end:10px;width:14px}
/* A day marker is centered on its own cell, independent of numeral width or language. */
.cal-pop .cal-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:4px;direction:rtl}
.cal-pop .cal-grid>button{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;padding:0!important;margin:0!important;min-width:0!important;height:36px!important;border-radius:10px!important;line-height:1!important;transform:none!important}
.cal-pop .cal-grid>button.is-today::before,.cal-pop .cal-grid>button.is-today::after{content:none!important}
.cal-pop .cal-grid>button.is-today{box-shadow:inset 0 0 0 1.5px var(--primary);color:var(--primary)}
.cal-pop .cal-grid>button.sel{background:var(--primary)!important;color:var(--on-primary,#fff)!important;box-shadow:none!important}
.cal-pop .cal-grid>.dow{display:flex;align-items:center;justify-content:center;text-align:center;min-width:0}
/* Keep deletion out of the typing surface; long press and swipe expose it on the list. */
.modal form[data-form="note"] [data-a="note:delete"],.modal form[data-form="journal"] [data-a="journal:delete"]{display:none!important}
#proDrive,.pro-drive,.plan-cash-accounts{display:none!important}
.pp521-person-actions{display:flex;justify-content:flex-end;gap:8px;margin:8px 0}
.pp521-person-actions .btn{font-size:14px;min-height:38px}
/* Translate the complete painted row, never its individual text/icon children. */
.pp521-swiping,.pp521-swiped{translate:var(--pp-swipe-x,0px) 0!important;transition:translate .22s cubic-bezier(.22,.8,.25,1)!important;will-change:translate}
.pp521-swiping{transition:none!important;touch-action:pan-y}
:is(.plan-project,.plan-goal,.note-card,.journal-card,.arch-row,.plan-activity-row,.plan-task,.pt-person,.pt-item){touch-action:pan-y;transition:translate .22s cubic-bezier(.22,.8,.25,1)}
body>.pp521-swipe-delete{display:flex;position:fixed;width:64px;border:0;background:var(--danger,#b42332);color:white;z-index:90;align-items:center;justify-content:center;border-radius:14px;cursor:pointer}
.pp521-swipe-delete svg{width:22px;height:22px;pointer-events:none}
.pp521-swiping>.plan-swipe-delete,.pp521-swiped>.plan-swipe-delete{display:none!important}
@media(prefers-reduced-motion:reduce){.pp521-swiping,.pp521-swiped{transition:none!important}}

.pp521-resolve .plan-connection{padding:8px 12px;border-radius:10px;font-size:14px;overflow-wrap:anywhere}
.pp521-resolve details summary{padding:10px 0;cursor:pointer}
.pp521-resolve .plan-quick{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.pp521-resolve .plan-quick input{flex:1;min-width:160px;font-size:16px}
.pp521-pull{position:fixed;top:calc(env(safe-area-inset-top,0px) + 62px);left:50%;transform:translateX(-50%);display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--card,var(--surface,#fff));box-shadow:0 2px 12px #0002;z-index:12000;pointer-events:none}
.pp521-pull>span{width:22px;height:22px;border:2.5px solid color-mix(in srgb,var(--primary) 18%,transparent);border-top-color:var(--primary);border-radius:50%;animation:pp521-spin .8s linear infinite}
.pp521-pull.failed>span{border-top-color:var(--danger,#b42332)}
@keyframes pp521-spin{to{transform:rotate(360deg)}}
.pp521-delete-account{margin-top:24px;padding-top:16px;border-top:1px solid var(--line,#8883)}
.pp521-delete-account .btn{font-size:14px;min-height:40px}
.pp521-delete-status{font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.pp521-delete-account-form input{width:100%;font-size:16px;margin:12px 0}
@media(prefers-reduced-motion:reduce){.pp521-swiped{transition:none}.pp521-pull>span{animation-duration:1.6s}}

.pp521-deletion-resume{position:fixed;inset:0;background:var(--bg,#15191f);color:var(--text,#eee);z-index:30000;display:grid;place-items:center;padding:24px;direction:rtl}
.pp521-deletion-resume>div{max-width:440px;line-height:1.8;text-align:center}
.pp521-deletion-resume h1{font-size:22px}.pp521-deletion-resume .btn{margin:8px}
/* Editing and the work calendar share the app's typography and theme tokens. */
.pp-editing{display:grid;gap:12px;min-width:0;padding:2px 0}
.pp-edit-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.pp-edit-summary>div{display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:72px;padding:10px 12px;background:var(--card,var(--surface));border:1px solid var(--line);border-radius:12px;min-width:0}
.pp-edit-summary span{font-size:12px;color:var(--muted);line-height:1.5}
.pp-edit-summary b{font-size:18px;line-height:1.4;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.pp-work-resolve{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--card,var(--surface))}
.pp-work-resolve-head{display:flex;align-items:center;gap:10px;min-width:0}
.pp-work-resolve-head img{object-fit:contain;flex:none}
.pp-work-resolve-head>div{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}
.pp-work-resolve-head b{font-size:14px}.pp-work-resolve-head small{font-size:12px;color:var(--muted)}
.pp-work-resolve-head>span{font-size:12px;max-width:32%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pp-work-details{border-top:1px solid var(--line);font-size:14px;min-width:0}
.pp-work-details>summary{cursor:pointer;padding:10px 2px;font-size:13px;color:var(--muted)}
.pp-work-detail-body{display:grid;gap:10px;padding:8px 0;min-width:0}
.pp-work-detail-body label,.pp-work-entry label{display:flex;flex-direction:column;gap:6px;font-size:13px}
.pp-work-detail-body input,.pp-work-entry input,.pp-work-entry select{width:100%;min-width:0;font-size:16px!important;min-height:42px}
.pp-work-resolve .plan-quick label{flex:1;min-width:0}.pp-work-resolve .plan-quick input{min-width:0}
.pp-edit-manual{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pp-edit-manual .btn{min-height:38px;font-size:13px}
.pp-edit-steps header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.pp-edit-steps h3{font-size:14px;margin:0}.pp-edit-steps small{font-size:12px;color:var(--muted)}
.pp-edit-step{display:flex;gap:10px;align-items:center;min-height:42px;border-bottom:1px solid var(--line)}
.pp-edit-step>b{flex:1;font-size:14px;font-weight:500}.pp-edit-step .is-done{text-decoration:line-through;color:var(--muted)}
.pp-edit-step>.pt-tick{width:24px;height:24px;flex:none;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--primary)}
.pp-edit-step>details{position:relative}.pp-edit-step>details>summary{list-style:none;cursor:pointer;display:grid;place-items:center;min-width:36px;min-height:36px}.pp-edit-step svg{width:17px;height:17px}
.pp-edit-step>details>div{position:absolute;inset-inline-end:0;top:35px;width:min(300px,75vw);padding:12px;background:var(--card,var(--surface));border:1px solid var(--line);border-radius:12px;z-index:20;box-shadow:0 8px 24px #0002}
.pp-work-today-tools{display:flex;align-items:center;gap:3px;margin-inline-start:auto}.pp-work-day-total{font-size:12px;color:var(--muted);background:transparent;border:0;padding:5px;white-space:nowrap}
.pp-work-today,.pp-work-activity-history{margin-top:16px;border-top:1px solid var(--line);padding-top:10px}.pp-work-today h2,.pp-work-activity-history>summary{font-size:14px;margin:0 0 6px;font-weight:600}
.pp-work-row{display:flex;gap:12px;align-items:center;justify-content:space-between;width:100%;min-height:54px;background:transparent;color:var(--text);border:0;border-bottom:1px solid var(--line);padding:9px 2px;text-align:start;cursor:pointer}
.pp-work-row>span{display:flex;flex-direction:column;gap:4px;min-width:0}.pp-work-row>span:last-child{flex:none;font-size:12px;text-align:end}.pp-work-row b{font-size:14px;font-weight:600}.pp-work-row small{font-size:12px;color:var(--muted);line-height:1.5;overflow-wrap:anywhere}
.pp-work-entry{display:grid;gap:12px}.pp-work-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pp-calendar{max-width:1000px;margin-inline:auto;min-width:0}.pp-calendar>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.pp-calendar h1{font-size:18px;margin:0}
.pp-calendar-days{display:flex;align-items:center;justify-content:center;gap:6px;margin:12px 0}.pp-calendar-days>button{flex:1;min-width:0;padding:8px 2px;border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--text);font-size:12px}.pp-calendar-days>button.active{background:var(--primary);color:var(--on-primary,#fff)}.pp-calendar-days>.icon-btn{flex:none;width:30px}
.pp-calendar-total{display:flex;justify-content:space-between;width:100%;border:0;background:transparent;color:var(--text);padding:10px 0;font-size:13px}.pp-calendar-total b{font-size:16px}
.pp-calendar-all{padding-bottom:8px}.pp-calendar-all .pp-work-row{min-height:40px}.pp-calendar-scroll{height:min(65dvh,660px);min-height:300px;overflow:auto;overscroll-behavior:contain;border-top:1px solid var(--line);scrollbar-width:thin}
.pp-calendar-timeline{height:1440px;position:relative;direction:ltr;margin-top:12px;margin-bottom:24px}
.pp-calendar-hour{position:absolute;left:0;right:0;display:flex;gap:8px;align-items:center;height:1px;color:var(--muted)}.pp-calendar-hour time{width:44px;font-size:11px;text-align:center;flex:none;background:var(--bg)}.pp-calendar-hour i{height:1px;background:var(--line);flex:1}
.pp-calendar-bar{position:absolute;left:calc(56px + (100% - 64px) * var(--lane) / var(--lanes));width:calc((100% - 64px) / var(--lanes) - 4px);min-height:24px;padding:4px 8px;border-radius:7px;border:1px solid color-mix(in srgb,var(--primary) 25%,var(--line));border-inline-start:3px solid var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--card,var(--surface)));color:var(--text);display:flex;flex-direction:column;gap:3px;align-items:flex-start;justify-content:flex-start;text-align:start;overflow:hidden;direction:rtl;cursor:pointer}
.pp-calendar-bar b{font-size:13px;line-height:1.3}.pp-calendar-bar span,.pp-calendar-bar small{font-size:11px;line-height:1.4}.pp-calendar-bar.is-active{border-style:dashed}
@media(max-width:640px){.pp-edit-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-edit-summary>div{min-height:65px;padding:9px 10px}.pp-edit-summary b{font-size:17px}.pp-calendar-days>button{font-size:11px}.pp-work-row>span:last-child{max-width:40%;white-space:normal}.pp-work-row{gap:8px}.plan-today-menu-header{flex-wrap:wrap}.pp-work-today-tools{gap:1px}}
.pp-calendar-bar{min-height:6px;padding-block:3px;gap:1px}.pp-calendar-bar b{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:15px;font-size:12px}.pp-calendar-bar small{font-size:10px;line-height:12px}
.pp-work-today .pp-work-row{border:1px solid var(--line);border-inline-start:3px solid var(--work-color);border-radius:10px;background:color-mix(in srgb,var(--work-color) 8%,var(--card,var(--surface)));padding:9px 12px;margin:6px 0}
.pp-work-prepare{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-top:10px}.pp-work-prepare .btn{min-height:36px;font-size:13px}.pp-work-prepare small{font-size:12px;color:var(--muted)}.pp-work-prepare-error{flex-basis:100%;margin:0;font-size:13px;color:var(--danger);line-height:1.7}.pp-work-prepare-error:empty{display:none}
.pp-calendar-bar{border-color:color-mix(in srgb,var(--work-color,var(--primary)) 25%,var(--line));border-inline-start-color:var(--work-color,var(--primary));background:color-mix(in srgb,var(--work-color,var(--primary)) 12%,var(--card,var(--surface)))}
.pp-work-activity-history .pp-work-row{border-inline-start:2px solid var(--work-color);padding-inline-start:10px}

.pp-duration{border:0;padding:0;margin:0}.pp-duration legend{font-size:14px;margin-bottom:8px}.pp-duration-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pp-duration-fields input{width:100%;font-size:16px;text-align:center}.pp-edit-summary [data-pp-project-work]{font-size:14px;direction:rtl}.pp-calendar-total [data-pp-day-work]{font-size:14px;direction:rtl}.pp-calendar .plan-week-strip{margin-block:10px}.pp-calendar .plan-menu-calendar{flex:1;justify-content:center}.pp-calendar .plan-today-menu-header{flex-wrap:nowrap}

.pp-calendar-heading{border:0!important;padding-block:6px!important;margin-bottom:0!important}.pp-calendar-heading .plan-menu-calendar{font-size:15px;justify-content:flex-start;gap:6px}.pp-calendar-date-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0 18px}.pp-calendar-date-strip button{display:flex;flex-direction:column;align-items:center;gap:5px;padding:8px 0;background:none;border:0;color:var(--muted);font:inherit}.pp-calendar-date-strip b{font-size:15px;font-weight:500}.pp-calendar-date-strip small{font-size:13px}.pp-calendar-date-strip .selected{color:var(--primary)}.pp-calendar-scroll{border:0;height:calc(100dvh - 230px);min-height:300px}.pp-calendar-timeline{border-left:1px solid var(--line);margin-left:44px}.pp-calendar-hour time{margin-left:-44px;width:36px}.pp-calendar-hour{gap:8px}.pp-calendar-bar{left:calc(8px + (100% - 12px) * var(--lane) / var(--lanes));width:calc((100% - 12px) / var(--lanes) - 4px)}.pp-calendar-now{position:absolute;left:0;right:0;height:1px;display:flex;align-items:center;z-index:3;pointer-events:none}.pp-calendar-now time{position:absolute;right:100%;margin-right:8px;color:var(--primary);font-size:11px}.pp-calendar-now i{width:100%;height:1px;background:var(--muted)}.pp-calendar-now i:before{content:'';position:absolute;width:5px;height:5px;left:-2px;top:-2px;border-radius:50%;background:var(--muted)}

.pp-resolve-elapsed{font-size:15px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.pp-work-resolve-head{flex-wrap:wrap}
html .plan-review-sheet .modal-head h2,html .plan-review-sheet>header h2,html .plan-review-sheet h2:first-child{font-size:17px!important;line-height:1.6!important;font-weight:600}

.pp-card-ring{position:relative;display:inline-grid;place-items:center;width:48px;height:48px;flex:0 0 48px;direction:ltr}.pp-card-ring svg{width:48px;height:48px;transform:rotate(-90deg);overflow:visible}.pp-card-ring circle{fill:none;stroke-width:2.7}.pp-ring-track{stroke:color-mix(in srgb,var(--ring-color) 18%,transparent)}.pp-ring-value{stroke:var(--ring-color);stroke-linecap:round;filter:drop-shadow(0 0 2px color-mix(in srgb,var(--ring-color) 38%,transparent));transition:stroke-dasharray .25s}.pp-card-ring b{position:absolute;font-size:11px!important;font-weight:500;color:var(--ink)}.plan-goal-reference-track:has(.pp-card-ring){justify-content:space-between;min-height:50px}.plan-colored-record .plan-progress>i{box-shadow:0 0 5px color-mix(in srgb,var(--record-accent,var(--primary)) 30%,transparent)}

.pp-edit-step{min-height:42px;padding-block:5px}.pp-edit-step>b{font-size:14px;font-weight:500}

.pp-auto-timer{font:inherit;font-size:12px;background:color-mix(in srgb,var(--primary) 12%,var(--card));color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:5px 9px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:ltr}
.pp-card-ring{width:64px;height:64px;flex-basis:64px;margin-inline-start:auto;order:2}.pp-card-ring svg{width:64px;height:64px}.pp-card-ring b{font-size:14px!important;font-weight:600}.pp-ring-track{stroke:color-mix(in srgb,var(--ring-color) 26%,transparent)}.plan-goal-reference-track:has(.pp-card-ring){min-height:68px;align-items:center}

html .plan-card-top .plan-display-grip{position:static!important;inset:auto!important;transform:none!important;flex:0 0 30px;width:30px;height:30px;margin:0!important;align-self:center;z-index:auto}.plan-card-top{gap:6px}.pp-work-row>span:last-child>bdi{display:block}.pp-work-row>span:last-child{direction:rtl}
html .pp-card-ring{margin-left:0!important;margin-right:auto!important}

.pp-work-duration{direction:rtl!important;unicode-bidi:isolate!important;text-align:right}.pp-stage-summary-group{margin-block:12px}.pp-stage-summary-group h3{font-size:14px;color:var(--muted);margin:0 0 6px}.pp-stage-summary-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.pp-stage-summary-row>span{display:flex;flex-direction:column;min-width:0;gap:4px}.pp-stage-summary-row b{font-size:14px;font-weight:500;overflow-wrap:anywhere}.pp-stage-summary-row small{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.pp-stage-summary-row>small{flex:none}.pp-stage-summary-row>span>small{color:var(--muted);max-height:6em;overflow:auto}
/* Shared, card-relative progress sizing for goals and projects. */
.plan-project-reference:has(.pp-card-ring),.plan-goal:has(.pp-card-ring){container-type:inline-size}
html .pp-card-ring{--ring-size:clamp(80px,22cqw,112px);width:var(--ring-size);height:var(--ring-size);flex-basis:var(--ring-size)}
html .pp-card-ring svg{width:100%;height:100%}html .pp-card-ring b{font-size:clamp(15px,4cqw,19px)!important}.plan-goal-reference-track:has(.pp-card-ring){min-height:84px}

/* Resolve status stays inside the app, independent of system notification permissions. */
.pp-work-notice{position:fixed;z-index:10020;inset-block-start:calc(env(safe-area-inset-top,0px) + 76px);inset-inline:16px;margin-inline:auto;max-width:390px;display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--card,var(--bg));color:var(--text);border:1px solid var(--border);border-radius:16px;box-shadow:0 12px 40px #0002;direction:rtl;animation:pp-work-notice-enter .2s ease-out}.pp-work-notice div{flex:1;min-width:0}.pp-work-notice b{display:block;font-size:14px;line-height:1.6}.pp-work-notice small{display:block;font-size:13px;line-height:1.7;overflow-wrap:anywhere}.pp-work-notice button{border:0;background:transparent;color:inherit;font-size:22px;width:32px;height:32px;cursor:pointer}.pp-work-notice-dot{width:9px;height:9px;flex-shrink:0;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 14%,transparent)}@keyframes pp-work-notice-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.pp-work-notice{animation:none}}
html,body,.main{overscroll-behavior-y:contain}.pp-edit-step{min-height:38px!important;padding:5px 8px!important;gap:8px!important}.pp-edit-steps>header{margin-bottom:6px!important}.pp-stage-summary-row{min-height:34px!important;padding:5px 0!important}.pp-stage-summary-group h3{font-size:13px!important;margin:9px 0 4px!important}

html.pp-activities-page,html.pp-activities-page body{height:100%;overflow:hidden!important}.pp-activities-main{display:flex!important;flex-direction:column;height:var(--plan-visible-height,100dvh);overflow:hidden!important;min-height:0!important}.pp-activities-main>.m-bar{flex-shrink:0}.pp-activities-main>.view{flex:1;min-height:0!important;display:flex!important;flex-direction:column;overflow:hidden!important}.pp-activities-header{flex-shrink:0;display:flex;flex-direction:column;gap:8px}.pp-activities-content{min-height:0;flex:1;overflow-y:auto;overscroll-behavior-y:contain;padding-top:12px}.pp-activities-content>.plan-hub-list{overflow:visible}.pp-activities-header .plan-hub-tools{margin:0}.pp-activities-header .plan-navigation-header{margin:0}.pp-activities-header .plan-schedule-segments{margin:0}
@media(max-width:760px){.pp-activities-main{height:calc(var(--plan-visible-height,100dvh) - 80px - env(safe-area-inset-bottom,0px))}.pp-activities-main>.view{padding-bottom:0!important}form[data-form="note"] textarea[name="body"]{max-height:calc(var(--plan-visible-height,100dvh) - 190px);overflow-y:auto;scroll-padding-bottom:16px}}
.pp-activities-main{padding-bottom:0!important}
/* One open, compact central project list: scrolling belongs to the page. */
.plan-project-home-steps,.plan-project-step-scroll,.plan-project-steps .plan-list{max-height:none!important;overflow:visible!important}
.plan-project-steps .plan-step-group>header{display:flex;justify-content:space-between;gap:8px;font-size:13px;margin:12px 0 5px}
.plan-project-steps .plan-check-row{min-height:38px!important;padding:5px 8px!important;gap:8px!important}
.plan-project-steps .plan-check-row .plan-item-main>small{display:none}
.pp-project-dates h3{font-size:14px;margin:14px 0 5px}.pp-project-bar-print{flex:none;width:34px;height:34px}
.pp-project-bar-print,html body #main .pp-project-bar-print{width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;color:#fff!important;opacity:1!important;filter:drop-shadow(0 1px 1px rgb(0 0 0 / 16%))}
.pp-project-bar-print:hover{opacity:.8!important}.pp-project-bar-print .ic{width:19px;height:19px}
.plan-project-steps .plan-grip,.plan-project-steps .sched-ic{display:none!important}

/* The photo is only a quiet monochrome texture; text keeps normal theme contrast. */
html.plan-usability-ui .plan-review-form>.plan-day-quote{font-size:16px!important;line-height:1.8!important}

/* Keep the app mark centered and identical to the installation artwork. */
.brand .logo{padding:0;line-height:0;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.brand .logo>img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;margin:0;transform:none;}
.about-logo>img{display:block;object-fit:contain;object-position:center;}

.pro-login .pl-card>img.pp2027-login-logo{display:block;width:104px;height:104px;object-fit:contain;margin:0 auto 22px;border-radius:24px;}

/* Library chrome follows the global accent; record accents remain independent. */

/* Resolve uses one summary per project/tab; individual visits stay inside its sheet. */
.pp-resolve-work-group{display:grid;gap:6px;margin-block:6px}
.pp-resolve-tab-row{width:100%;text-align:start;min-height:76px;gap:12px;animation:none}
.pp-resolve-tab-row>span:first-child{display:grid;gap:2px;min-width:0}
.pp-resolve-tab-row>span:last-child{display:grid;gap:3px;flex-shrink:0;text-align:end}
.pp-resolve-tab-name{color:var(--primary);font-weight:600}
.pp-resolve-visit{display:grid;gap:4px;padding:10px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.pp-resolve-visit:last-child{border-bottom:0}
.pp-resolve-completed-work{margin-top:10px}

.pp-resolve-filename{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-variant-numeric:lining-nums;unicode-bidi:isolate}

/* Incoming synchronization changes no entry/glow/transition animation. */
html.pp-sync-paint *,html.pp-sync-paint *::before,html.pp-sync-paint *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important;}

/* Theme size affects text, never the shell's viewport geometry. */
html,body,#root,#app{width:100%;max-width:100vw;min-width:0;overflow-x:hidden;box-sizing:border-box}
*,*::before,*::after{box-sizing:border-box}
html{font-size:100%}
.main,.modal-body{font-size:.875rem;min-width:0}
.main :is(.view,.grid,.row,.plan-item-main,.plan-project-title,.plan-goal-title){min-width:0}
@media(max-width:767px){
 .app,.main,.view{min-width:0;max-width:100%}
 .main{width:100%}
 .main :is(input,textarea,select){max-width:100%;min-width:0}
 .main :is(.pp-visual-project-card,.pp-visual-goal-card){min-width:0;max-width:100%}
}

@media(max-width:767px){html.plan-usability-ui{scrollbar-gutter:auto}}

/* A quick-menu item marked wide (the assistant in Goals) takes its own row. */
.plan-context-quick-menu [data-a="plan:contextQuickAction"][data-wide]{grid-column:1/-1}

.pp-daily-status{--daily-accent:var(--primary);position:relative;display:grid;grid-template-columns:38px minmax(54px,92px) minmax(0,1fr) 96px;align-items:center;gap:10px;padding:18px 14px;margin:10px 0 12px;min-height:116px;box-sizing:border-box;background:linear-gradient(115deg,color-mix(in srgb,var(--daily-accent) 18%,var(--card)),color-mix(in srgb,var(--card) 94%,transparent) 58%,color-mix(in srgb,var(--daily-accent) 8%,var(--card)));border:1px solid color-mix(in srgb,var(--daily-accent) 25%,var(--line));border-radius:24px;color:var(--ink);min-width:0;isolation:isolate;overflow:hidden;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--ink) 10%,transparent),0 8px 24px color-mix(in srgb,var(--daily-accent) 6%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.pp-daily-status::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 8% 5%,color-mix(in srgb,var(--daily-accent) 22%,transparent),transparent 52%),radial-gradient(ellipse at 90% 95%,color-mix(in srgb,var(--daily-accent) 12%,transparent),transparent 46%);pointer-events:none}
.pp-daily-status[data-weather="rain"]::before,.pp-daily-status[data-weather="snow"]::before{background:radial-gradient(ellipse at 0 5%,color-mix(in srgb,var(--ink) 15%,transparent),transparent 50%),radial-gradient(ellipse at 90% 95%,color-mix(in srgb,var(--daily-accent) 25%,transparent),transparent 55%)}
.pp-daily-status:has(.pp-daily-mosaic[hidden]){grid-template-columns:38px minmax(0,1fr) 96px}
.pp-daily-time{color:color-mix(in srgb,var(--daily-accent) 75%,var(--ink));display:grid;place-items:center}.pp-daily-icon{width:38px;height:38px;display:inline-block;background:currentColor;mask:var(--daily-icon) center/contain no-repeat;-webkit-mask:var(--daily-icon) center/contain no-repeat;flex:none}
.pp-daily-mosaic{display:grid;grid-template-columns:repeat(var(--tile-columns),minmax(0,1fr));gap:6px;min-width:0;align-content:center;direction:ltr}.pp-daily-mosaic[hidden]{display:none}
.pp-daily-tile{width:100%;max-width:var(--tile-size);aspect-ratio:1;border-radius:6px;background:color-mix(in srgb,var(--muted) 24%,transparent);border:1px solid color-mix(in srgb,var(--ink) 5%,transparent);box-sizing:border-box;transition:background .18s}
.pp-daily-tile.is-complete{background:linear-gradient(145deg,color-mix(in srgb,var(--daily-accent) 65%,#fff),var(--daily-accent));border-color:color-mix(in srgb,var(--daily-accent) 60%,#fff);box-shadow:inset 0 1px 2px #ffffff40,0 2px 8px color-mix(in srgb,var(--daily-accent) 15%,transparent)}
.pp-daily-summary{min-width:0;display:grid;gap:3px;text-align:center;border-left:1px solid color-mix(in srgb,var(--ink) 16%,transparent);padding-left:8px}.pp-daily-summary small{font-size:10px!important;color:var(--muted);line-height:1.5;opacity:.8}.pp-daily-count{display:flex;justify-content:center;align-items:baseline;gap:6px;white-space:nowrap;font-variant-numeric:tabular-nums;line-height:1.4}.pp-daily-count strong{font-size:23px!important;font-weight:650!important;color:var(--daily-accent)}.pp-daily-count span{font-size:15px;color:var(--muted)}.pp-daily-caption{font-size:11px!important;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}
.pp-daily-weather{min-width:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px;text-align:center;border-left:1px solid color-mix(in srgb,var(--ink) 16%,transparent);padding-left:8px}.pp-daily-weather .pp-daily-icon{color:var(--daily-accent);width:36px;height:36px;background:linear-gradient(135deg,color-mix(in srgb,var(--daily-accent) 45%,#fff),var(--daily-accent));filter:drop-shadow(0 3px 6px color-mix(in srgb,var(--daily-accent) 28%,transparent))}.pp-daily-temperature{font-size:21px;line-height:1.4;font-weight:550;font-variant-numeric:tabular-nums}
.pp-daily-weather small{font-size:11px!important;line-height:1.55;color:var(--muted);width:100%;overflow-wrap:anywhere}.pp-daily-weather button{font:inherit;font-size:11px!important;color:var(--primary);border:0;background:none;padding:5px 0;line-height:1.5;cursor:pointer}.pp-weather-credit{width:100%;font-size:8px;color:var(--muted);text-decoration:none;opacity:.75}
html.pt-glass .pp-daily-status{background:linear-gradient(115deg,color-mix(in srgb,var(--daily-accent) 20%,var(--lg-tint-strong)),var(--lg-tint-strong));border-color:var(--lg-edge);backdrop-filter:var(--lg-blur);-webkit-backdrop-filter:var(--lg-blur);box-shadow:var(--lg-shine)}
@media(min-width:600px){.pp-daily-status{grid-template-columns:62px minmax(85px,185px) minmax(0,1fr) 155px;gap:24px;padding:26px 30px;min-height:160px;border-radius:28px}.pp-daily-status:has(.pp-daily-mosaic[hidden]){grid-template-columns:62px minmax(0,1fr) 155px}.pp-daily-time .pp-daily-icon{width:56px;height:56px}.pp-daily-mosaic{gap:8px}.pp-daily-tile{border-radius:8px}.pp-daily-count strong{font-size:32px!important}.pp-daily-count span{font-size:22px}.pp-daily-count{gap:10px}.pp-daily-caption{font-size:15px!important}.pp-daily-summary small{font-size:11px!important}.pp-daily-summary{padding-left:18px}.pp-daily-weather{padding-left:18px;gap:8px}.pp-daily-weather .pp-daily-icon{width:56px;height:56px}.pp-daily-temperature{font-size:28px}.pp-daily-weather small{font-size:14px!important}}
@media(max-width:400px){.pp-daily-status{grid-template-columns:30px minmax(60px,84px) minmax(0,1fr) 84px;gap:7px;padding:16px 10px;border-radius:21px}.pp-daily-time .pp-daily-icon{width:30px;height:30px}.pp-daily-count strong{font-size:21px!important}.pp-daily-count{gap:4px}.pp-daily-weather .pp-daily-icon{width:29px;height:29px}}
@media(prefers-reduced-motion:reduce){.pp-daily-tile{transition:none}}
@media(prefers-reduced-transparency:reduce){.pp-daily-status,html.pt-glass .pp-daily-status{background:var(--card);backdrop-filter:none;-webkit-backdrop-filter:none}}
.pp-location-editor{display:grid;gap:8px;margin-top:8px}.pp-location-editor .btn-row{flex-wrap:wrap}.pp-location-editor .btn{font-size:13px;min-height:38px}.pp-location-error{color:var(--danger,#c44242)}
.pp-filming-location{display:flex;gap:9px;align-items:flex-start;min-width:0;margin:8px 0;padding:9px 0;font-size:13px}.pp-filming-location>span{color:var(--primary);flex:none}.pp-filming-location>div{display:grid;gap:3px;min-width:0}.pp-filming-location small{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.pp-filming-location a{font-size:12px;color:var(--primary);text-decoration:none;line-height:1.7}.shoot-card>.pp-filming-location{flex-basis:100%}.shoot-card:has(>.pp-filming-location){flex-wrap:wrap}
.pp-location-picker{position:fixed;inset:0;z-index:10050;display:flex!important;align-items:center;justify-content:center;background:color-mix(in srgb,#000 40%,transparent);padding:14px;color:var(--ink)}
.pp-map-dialog{width:min(680px,100%);max-height:calc(100dvh - 28px);overflow-y:auto;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:16px;display:grid;gap:12px;box-shadow:0 20px 50px #0003}
.pp-map-dialog>header{display:flex;align-items:center;justify-content:space-between}.pp-map-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.pp-map-search input{min-width:0;width:100%;font:inherit;font-size:16px!important;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px}.pp-map-canvas{height:min(45dvh,380px);min-height:220px;border-radius:12px;background:var(--bg);isolation:isolate;color:#242d39}.pp-map-results{display:grid;gap:4px;max-height:130px;overflow:auto}.pp-map-results:empty{display:none}.pp-map-results button{white-space:normal;text-align:start;justify-content:flex-start;font-size:13px}.pp-map-status{color:var(--muted);font-size:12px}.pp-map-credit{font-size:10px;color:var(--muted)}
.pp-map-canvas .leaflet-control-attribution{font:10px system-ui!important}.pp-map-confirm{min-height:42px!important}.pp-map-dialog button:focus-visible,.pp-daily-weather button:focus-visible,.pp-filming-location a:focus-visible{outline:2px solid var(--primary);outline-offset:3px}

.pp-map-results{max-height:180px}.pp-map-results button.btn{display:block!important;height:auto!important;min-height:44px!important;max-height:none!important;padding:10px!important;line-height:1.65!important;white-space:normal!important;overflow-wrap:anywhere;background:var(--bg)!important;border:1px solid var(--line)!important;border-radius:10px!important}

.plan-event:has(>.pp-filming-location){flex-wrap:wrap}.plan-event>.pp-filming-location{flex-basis:100%;order:3}

.pp-location-editor label{display:grid;gap:6px;font-size:13px}.pp-location-editor textarea{width:100%;box-sizing:border-box;min-height:44px;font:inherit;font-size:16px!important;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:10px;resize:vertical}

.pp-daily-count{direction:ltr}.pp-daily-count strong:last-child{color:var(--ink);font-weight:500!important}.pp-daily-weather{direction:ltr}.pp-daily-weather-art{width:38px;height:38px;flex:none;filter:drop-shadow(0 3px 7px color-mix(in srgb,var(--daily-accent) 24%,transparent))}@media(min-width:600px){.pp-daily-weather-art{width:58px;height:58px}}@media(max-width:400px){.pp-daily-weather-art{width:32px;height:32px}}

/* Only the primary activity list drives this widget. Time icon belongs to the greeting. */
.pp-daily-status{grid-template-columns:minmax(54px,92px) minmax(0,1fr) 96px}.pp-daily-status:has(.pp-daily-mosaic[hidden]){grid-template-columns:minmax(0,1fr) 96px}.pp-daily-greeting{display:flex;align-items:center;justify-content:center;gap:5px}.pp-daily-greeting .pp-daily-icon{width:18px;height:18px;color:var(--daily-accent)}
@media(min-width:600px){.pp-daily-status{grid-template-columns:minmax(85px,185px) minmax(0,1fr) 155px}.pp-daily-status:has(.pp-daily-mosaic[hidden]){grid-template-columns:minmax(0,1fr) 155px}.pp-daily-greeting .pp-daily-icon{width:20px;height:20px}}
@media(max-width:400px){.pp-daily-status{grid-template-columns:minmax(60px,84px) minmax(0,1fr) 84px}}
/* Give the mosaic the flexible width; keep the two information areas compact. */
.pp-daily-status{grid-template-columns:minmax(0,1fr) 96px 96px;gap:10px}.pp-daily-status:has(.pp-daily-mosaic[hidden]){grid-template-columns:minmax(0,1fr) 96px}.pp-daily-summary,.pp-daily-weather{border-left:0;padding-left:0}.pp-daily-mosaic{grid-template-columns:repeat(var(--tile-columns),minmax(0,var(--tile-size)));justify-content:center}.pp-daily-count strong{font-size:21px!important}.pp-daily-count span{font-size:13px}.pp-daily-caption{font-size:10px!important}.pp-daily-summary small{font-size:9px!important}
@media(min-width:600px){.pp-daily-status{grid-template-columns:minmax(0,1fr) 150px 155px;gap:20px}.pp-daily-status:has(.pp-daily-mosaic[hidden]){grid-template-columns:minmax(0,1fr) 155px}.pp-daily-count strong{font-size:26px!important}.pp-daily-count span{font-size:17px}.pp-daily-caption{font-size:12px!important}.pp-daily-summary small{font-size:10px!important}}
@media(max-width:400px){.pp-daily-status{grid-template-columns:minmax(0,1fr) 88px 84px;gap:8px}.pp-daily-count strong{font-size:20px!important}}

/* Greeting is primary; the live completion sentence is the quieter second line. */
.pp-daily-summary{gap:6px}.pp-daily-summary .pp-daily-greeting{font-size:16px!important;color:var(--ink)!important;line-height:1.5;opacity:1;font-weight:600}
.pp-daily-greeting .pp-daily-icon{width:24px;height:24px}
.pp-daily-summary .pp-daily-caption{font-size:10px!important;line-height:1.7;color:var(--muted);font-weight:400}
@media(min-width:600px){.pp-daily-summary .pp-daily-greeting{font-size:19px!important}.pp-daily-summary .pp-daily-caption{font-size:12px!important}}

/* Shared content-only photographic cards. All surfaces follow the active theme. */
html.plan-usability-ui .view .pp-visual-library,html.plan-usability-ui .view .pp-visual-library>.plan-fin-widget-body{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;margin-block:12px!important}
html.plan-usability-ui .view .pp-visual-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr))!important;gap:12px!important;padding:0!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card{display:grid!important;grid-template-columns:minmax(0,1fr) 28%!important;grid-template-areas:"heading cover" "workflow cover" "quick cover" "status status";gap:8px 12px!important;padding:14px!important;min-height:190px!important;border:1px solid var(--line)!important;border-radius:20px!important;background:var(--card)!important;color:var(--ink);box-shadow:0 5px 22px color-mix(in srgb,var(--ink) 5%,transparent)!important;position:relative;overflow:hidden;direction:rtl}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card[hidden]{display:none!important}
.pp-visual-card .pp-visual-cover{grid-area:cover;border:0;padding:0;border-radius:12px;overflow:hidden;background:var(--surface);min-width:0;align-self:stretch;cursor:pointer}
.pp-visual-cover img{display:block;width:100%;height:100%;min-height:128px;object-fit:cover}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-heading{grid-area:heading;display:block!important;background:transparent;border:0;padding:0!important;margin:0!important;text-align:start;min-width:0;padding-inline-end:68px!important}
.pp-visual-card .plan-goal-reference-heading{display:block!important;min-height:0!important;height:auto!important;padding:0!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card h2{font-size:16px!important;line-height:1.7!important;margin:0!important;white-space:normal!important;overflow-wrap:anywhere}
.pp-visual-card .plan-goal-reference-heading p{display:block!important;font-size:12px!important;margin:2px 0!important;color:var(--muted);line-height:1.6}
.pp-visual-card .plan-goal-reference-meta{font-size:11px!important;display:flex!important;gap:5px!important;flex-wrap:wrap!important;margin:3px 0!important;color:var(--muted)}
.pp-visual-card .plan-goal-reference-meta svg{width:13px;height:13px}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-actions{position:absolute!important;inset-block-start:12px;inset-inline-start:12px;display:flex!important;align-items:center;gap:4px!important;margin:0!important;padding:0!important;max-width:74px;flex-wrap:wrap}
.pp-visual-card .pp-visual-actions .icon-btn,.pp-visual-card .pp-visual-actions .check{width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important;padding:4px!important}
.pp-visual-card .plan-grip,.pp-visual-card .plan-display-grip{position:static!important;inset:auto!important;width:16px!important;height:26px!important;min-width:16px!important;font-size:18px!important;transform:none!important;padding:0!important}
.pp-visual-workflow{grid-area:workflow;display:flex;gap:8px;min-width:0;align-items:start}.pp-visual-phase{flex:1;min-width:0}.pp-visual-phase>button{display:flex;align-items:center;gap:4px;border:0;background:transparent;color:var(--card-accent);font:inherit;font-size:11px;padding:4px 0;cursor:pointer}.pp-visual-phase>button svg{width:17px;height:17px;flex:none}
.pp-visual-progress{min-width:0;flex:1}.pp-visual-tiles{display:flex;flex-wrap:wrap;gap:3px;align-content:start;margin-block:3px;max-width:100%}.pp-visual-tiles i{display:block;width:12px;height:12px;flex:0 0 12px;border-radius:3px;background:color-mix(in srgb,var(--muted) 22%,var(--surface));border:1px solid color-mix(in srgb,var(--muted) 12%,transparent)}.pp-visual-tiles.many i{width:9px;height:9px;flex-basis:9px;border-radius:2px}.pp-visual-tiles i.complete{background:var(--card-accent,var(--primary));border-color:transparent;box-shadow:0 0 5px color-mix(in srgb,var(--card-accent,var(--primary)) 20%,transparent)}.pp-visual-progress small{font-size:11px;color:var(--muted);line-height:1.7}
.pp-visual-goal-links{display:flex;align-items:center;gap:1px}.pp-visual-goal-links .icon-btn{width:25px;height:28px;min-width:25px;padding:4px;color:var(--card-accent);border:0;background:transparent}.pp-visual-goal-links svg{width:17px;height:17px}
.pp-visual-quick{grid-area:quick;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pp-goal-progress-action{display:inline-flex;align-items:center;gap:4px;font:inherit;font-size:11px;line-height:1.5;padding:6px 10px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--primary) 10%,var(--card));color:var(--ink)}.pp-goal-progress-action svg{width:13px;height:13px}.pp-visual-target{font-size:11px;color:var(--muted)}.pp-visual-track{font-size:11px!important;padding:4px 8px!important;min-height:28px!important}.pp-visual-status{grid-area:status;display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding-block-start:7px;font-size:12px;color:var(--muted)}.pp-visual-status:empty{display:none}.pp-visual-status>button{border:0;background:transparent;color:inherit;text-align:start;font:inherit;padding:0}.pp-visual-status .check{width:18px;height:18px}
html.plan-usability-ui .view .pp-visual-segments{display:flex!important;width:100%!important;min-height:42px!important;padding:4px!important;border:1px solid var(--line)!important;border-radius:22px!important;background:var(--surface)!important;gap:4px!important}.pp-visual-segments>button,.pp-visual-segments>label{flex:1!important;text-align:center!important;min-height:34px!important;border-radius:18px!important;font-size:13px!important;padding:6px!important}.pp-visual-segments .active,.pp-visual-segments [aria-selected=true]{background:color-mix(in srgb,var(--primary) 22%,var(--card))!important;color:var(--ink)!important;border:1px solid color-mix(in srgb,var(--primary) 36%,var(--line))!important}
.pp-visual-detail-cover{position:relative;overflow:hidden;border-radius:22px;background:var(--card);border:1px solid var(--line);margin-bottom:16px}.pp-visual-detail-cover>img{width:100%;height:230px;object-fit:cover;display:block}.pp-visual-detail-cover>div{padding:16px}.pp-visual-detail-cover h2{font-size:22px;margin:0}.pp-visual-detail-cover p{color:var(--muted);font-size:13px}.pp-visual-detail-cover .pp-visual-tiles i{width:20px;height:20px;flex-basis:20px}
.plan-project-home-stages{display:flex;flex-wrap:wrap;gap:12px}.plan-project-home-stages>.plan-section-head{width:100%}.pp-visual-stage-detail{flex:1 1 180px;overflow:hidden;border-radius:18px;border:1px solid var(--line);background:var(--card);position:relative}.pp-visual-stage-image img{width:100%;height:100px;display:block;object-fit:cover}.pp-visual-stage-detail summary{padding:14px!important}.pp-visual-stage-detail .plan-project-stage-tools{padding:12px}
.pp-visual-goal-detail .goal-hero{display:grid;grid-template-columns:30% 1fr;padding:0;gap:16px;border-radius:20px;overflow:hidden;border:1px solid var(--line);background:var(--card)}.pp-visual-detail-photo img{width:100%;height:100%;min-height:170px;object-fit:cover;display:block}.pp-visual-goal-detail .goal-hero>.grow{padding:16px}.pp-visual-goal-detail .goal-hero>.ring,.pp-visual-goal-detail .goal-hero>svg{display:none}.pp-visual-detail-summary{display:flex;align-items:center;gap:16px;justify-content:space-between;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px;margin-block:12px}.pp-visual-detail-summary .pp-visual-tiles i{width:20px;height:20px;flex-basis:20px}.pp-visual-goal-detail .detail-grid>section{border:1px solid var(--line);border-radius:18px;padding:14px;background:var(--card)}
.pp-visual-shoot{display:flex!important;gap:12px!important;align-items:center!important;padding:10px!important;border-radius:16px!important}.pp-visual-shoot-cover{width:64px;height:64px;flex:0 0 64px;border-radius:10px;overflow:hidden}.pp-visual-shoot-cover img{width:100%;height:100%;object-fit:cover}.pp-visual-shoot .sd-date{font-size:12px;min-width:36px}.pp-visual-shoot h3{font-size:14px!important;margin:0 0 4px!important}.pp-visual-shoot .row-meta{font-size:11px}.pp-visual-shoot .sd-actions{flex-wrap:wrap;gap:4px}
.pp-visual-delete{text-align:center;border-radius:28px!important}.pp-visual-delete-symbol{display:grid;place-items:center;width:66px;height:66px;margin:0 auto 16px;border-radius:50%;background:color-mix(in srgb,var(--danger,#d55454) 12%,transparent);color:var(--danger,#d55454)}.pp-visual-delete-symbol svg{width:30px;height:30px}.pp-visual-delete p{line-height:1.9;font-size:16px}.pp-visual-delete aside{font-size:13px;line-height:1.9;padding:14px;border:1px solid var(--line);border-radius:18px;color:var(--muted)}.pp-visual-delete-actions{display:grid;gap:10px;margin-top:18px}.pp-visual-delete-actions .btn{width:100%;border-radius:24px;min-height:44px}
@media(max-width:760px){html.plan-usability-ui .view .pp-visual-grid{grid-template-columns:1fr!important}.pp-visual-detail-cover>img{height:190px}.pp-visual-shoot .sd-actions{max-width:92px}.pp-visual-goal-detail .goal-hero{grid-template-columns:28% 1fr}.pp-visual-goal-detail .goal-hero>.grow{padding:12px}.pp-visual-detail-summary{gap:8px}.pp-visual-stage-detail{flex-basis:100px}.pp-visual-stage-detail summary{font-size:12px!important;padding:10px!important}}

html.plan-usability-ui .view .pp-visual-grid .pp-visual-card{grid-template-rows:auto auto auto auto!important;background:color-mix(in srgb,var(--card-accent) 4%,var(--card))!important;border:1px solid var(--line)!important;box-shadow:0 3px 16px #00000008!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-heading{min-height:0!important;height:auto!important;padding-inline-end:0!important;padding-block-start:28px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-actions{inset:auto!important;top:8px!important;right:12px!important;left:auto!important;width:auto!important;max-width:none!important;flex-wrap:nowrap!important;display:flex!important;flex-direction:row!important;transform:none!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-actions>*{position:static!important;inset:auto!important;opacity:1!important;visibility:visible!important;transform:none!important;display:inline-flex!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .plan-project-start{position:static!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;padding:5px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .plan-project-card-phases{display:none!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-heading h2{font-size:16px!important;min-height:0!important}

html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-quick{min-height:0!important;align-content:start!important;align-items:center!important;gap:6px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-quick .btn{margin:0!important;height:30px!important;min-height:30px!important;padding:5px 8px!important;width:auto!important;font-size:11px!important;line-height:18px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-cover{height:100%!important;min-height:0!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-cover img{position:absolute;inset:0;height:100%;width:100%;min-height:0!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-cover{position:relative}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-status{min-height:25px!important}
html.plan-usability-ui .view .pp-visual-library-options{position:absolute;inset-inline-start:auto;inset-inline-end:0}
.pp-visual-goal-detail .goal-hero{grid-template-columns:1fr!important;gap:0!important}.pp-visual-detail-photo{height:170px}.pp-visual-detail-photo img{height:170px!important;min-height:0!important}.pp-visual-goal-detail .goal-hero>.grow{padding:16px!important}

html.plan-usability-ui .view .pp-visual-grid.is-list{grid-template-columns:1fr!important}.pp-visual-shoot .plan-item-main{min-width:0;flex:1}.pp-visual-shoot>.btn.text{max-width:40%;font-size:11px!important;white-space:normal!important}.pp-visual-shoot .plan-item-main small{font-size:11px!important}

.pp-visual-phase-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px;margin-bottom:18px}.pp-visual-phase-cards>button{background:var(--card);color:var(--ink);border:1px solid var(--line);padding:0;overflow:hidden;border-radius:18px;text-align:start;font:inherit;cursor:pointer}.pp-visual-phase-cards img{display:block;width:100%;height:110px;object-fit:cover}.pp-visual-phase-cards span{display:grid;grid-template-columns:24px 1fr;padding:12px;gap:5px;align-items:center}.pp-visual-phase-cards b{font-size:14px}.pp-visual-phase-cards small{grid-column:2;font-size:11px;color:var(--muted)}.pp-visual-phase-cards svg{width:22px;height:22px;color:var(--primary)}
@media(max-width:760px){.pp-visual-phase-cards{gap:8px}.pp-visual-phase-cards img{height:88px}.pp-visual-phase-cards span{padding:9px;grid-template-columns:1fr}.pp-visual-phase-cards small{grid-column:1}.pp-visual-phase-cards b{font-size:13px}}

html.plan-usability-ui .view .pp-visual-segments{height:44px!important;min-height:44px!important}.pp-visual-segments>button.btn{height:34px!important;min-height:34px!important;margin:0!important;line-height:20px!important;font-size:13px!important}
html.plan-usability-ui .view .pp-visual-segments>button.btn.primary{background:color-mix(in srgb,var(--primary) 24%,var(--card))!important;color:var(--ink)!important;border:1px solid color-mix(in srgb,var(--primary) 38%,var(--line))!important;box-shadow:none!important}
html.pt-glass.plan-usability-ui .view .pp-visual-grid .pp-visual-card{background:var(--lg-tint)!important;border-color:var(--lg-edge)!important;-webkit-backdrop-filter:var(--lg-blur);backdrop-filter:var(--lg-blur);box-shadow:var(--lg-shine)!important}
html.pt-glass .pp-visual-segments,html.pt-glass .pp-visual-detail-summary,html.pt-glass .pp-visual-detail-cover{background:var(--lg-tint)!important;border-color:var(--lg-edge)!important;-webkit-backdrop-filter:var(--lg-blur);backdrop-filter:var(--lg-blur)}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-no-cover{grid-template-columns:1fr!important;grid-template-areas:"heading" "workflow" "quick" "status"!important}.pp-visual-no-cover .pp-visual-cover{display:none}

/* Identical, borderless filter strips in both libraries. */
html.plan-usability-ui .view .pp-visual-segments{box-sizing:border-box!important;height:44px!important;min-height:44px!important;border:0!important;outline:0!important;box-shadow:none!important;align-items:center!important;margin:0!important}
html.plan-usability-ui .view .pp-visual-segments>button.btn{box-sizing:border-box!important;flex:1 1 0!important;width:0!important;height:36px!important;min-height:36px!important;border:0!important;outline:0!important;box-shadow:none!important}
html.plan-usability-ui .view .pp-visual-grid{align-items:start!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card{min-height:0!important;padding:10px!important;gap:5px 10px!important;border-radius:18px!important;align-self:start!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-heading{padding-block-start:24px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card h2{font-size:15px!important;line-height:1.5!important}
.pp-visual-card .plan-goal-reference-heading p{font-size:11px!important;margin:1px 0!important}
.pp-visual-card .pp-visual-status{padding-block-start:5px!important;min-height:20px!important}
.pp-visual-card .pp-visual-cover{position:relative!important;min-height:100px!important}
.pp-visual-time{position:absolute;inset-inline:4px;bottom:5px;padding:5px 3px;border-radius:8px;background:#0b142bd9;color:#fff;font-size:10px;display:flex;align-items:center;justify-content:center;gap:4px;line-height:1.5;pointer-events:none;backdrop-filter:blur(8px)}
.pp-visual-time i{display:none}.pp-visual-time.is-active i{display:block;width:5px;height:5px;flex:none;border-radius:50%;background:#63d5a3;box-shadow:0 0 5px #63d5a366}.pp-visual-time.is-active{font-variant-numeric:tabular-nums}

.pp-shoot-selection{display:grid;gap:8px}.pp-shoot-selection>label{display:flex!important;gap:9px;align-items:center;padding:8px;border-bottom:1px solid var(--line)}.pp-shoot-selection>label span{display:grid;gap:2px}.pp-shoot-selection small{color:var(--muted);font-size:11px}.pp-shoot-selection h3{font-size:14px;margin:8px 0}.pp-shoot-shot-list{display:grid;gap:9px}.pp-shoot-shot-list section>div{display:flex;gap:8px;align-items:center;padding:6px 0;font-size:12px;border-bottom:1px solid var(--line)}.pp-shoot-shot-list section>div>span{flex:1}.pp-shoot-callsheet{min-width:0}
html.plan-usability-ui .view .pp-visual-segments.pp-visual-segments>button.btn,
html.plan-usability-ui .view .pp-visual-segments.pp-visual-segments>button.btn.primary,
html.plan-usability-ui .view .pp-visual-segments.pp-visual-segments>button.btn.ghost{border:0!important;box-shadow:none!important;height:36px!important;min-height:36px!important;max-height:36px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-phase>button{height:24px!important;min-height:24px!important;padding:2px 0!important;font-size:11px!important;line-height:18px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-status{min-height:20px!important}
/* Keep the image action and timer action separate; no nested buttons. */
.pp-visual-photo-open{position:absolute;inset:0;display:block;border:0;background:transparent;padding:0;width:100%;height:100%;cursor:pointer}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-cover .plan-project-start{position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;border-radius:50%!important;background:#101927bb!important;border:1px solid #ffffff66!important;color:#fff!important;backdrop-filter:blur(6px);z-index:2}
.pp-visual-completion{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--muted);white-space:nowrap}.pp-visual-completion .check{width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card{gap:4px 9px!important;padding:9px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-heading{padding-block-start:22px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-actions{top:5px!important;right:9px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-quick:empty{display:none!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card[data-card-type="goal"] .pp-visual-heading{padding-block-start:24px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card[data-card-type="goal"] .plan-goal-reference-meta{gap:4px 9px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-quick{flex-wrap:wrap!important}
.pp-cover-edit{position:absolute;top:12px;left:12px;background:#101927bb!important;color:white!important;border:1px solid #ffffff66!important}
.pp-cover-preview{height:180px;overflow:hidden;border-radius:14px;background:var(--surface);margin-bottom:12px}.pp-cover-preview img{height:100%;width:100%;object-fit:cover}.pp-goal-notebook{display:grid;gap:8px;margin-top:12px}.pp-goal-notebook button{display:grid;text-align:start;gap:4px}.pp-goal-notebook small{color:var(--muted);font-size:12px;white-space:normal}
.pp-visual-phase-cards{gap:8px;margin-bottom:12px}.pp-visual-phase-cards img{height:72px}.pp-visual-phase-cards span{padding:8px;gap:3px;grid-template-columns:18px 1fr}.pp-visual-phase-cards svg{width:18px;height:18px}.pp-visual-phase-cards b{font-size:12px}.pp-visual-phase-cards small{font-size:10px}
.pp-phase-direct-tools{display:flex;justify-content:flex-end;margin-bottom:6px}.pp-phase-part{padding:12px 0;margin:0;border-bottom:1px solid var(--line)}.pp-phase-part>h3{display:flex;align-items:center;gap:6px;font-size:15px;margin:0 0 12px}.pp-phase-part>h3 svg{width:18px;height:18px;color:var(--primary)}.pp-project-brief p{font-size:13px;line-height:1.9}.pp-project-brief h3{font-size:14px}
@media(max-width:760px){.pp-visual-phase-cards img{height:58px}.pp-visual-phase-cards span{padding:7px;grid-template-columns:1fr}.pp-visual-phase-cards b{font-size:11px}}
.pp-visual-detail-photo{position:relative}.pp-goal-fold>summary{cursor:pointer;display:flex;align-items:center;gap:6px;font-size:13px;line-height:1.6;list-style:none}.pp-goal-fold>summary::after{content:'⌄';margin-inline-start:auto;color:var(--muted)}.pp-goal-fold[open]>summary{margin-bottom:10px}.pp-goal-fold-body{font-size:12px}.pp-visual-goal-detail .detail-grid>section{padding:10px}.pp-goal-fold .rm-head{font-size:12px}.pp-goal-fold .rm-step{padding:7px}.pp-goal-fold .btn{font-size:11px!important;min-height:30px!important}.pp-goal-fold .check{width:18px;height:18px}.pp-overview-back{flex:none}.pp-phase-strips{display:grid;gap:10px}.pp-phase-strips .pt-part{margin:0}
.pp-completion-reward{position:fixed;top:calc(env(safe-area-inset-top) + 28px);left:50%;transform:translateX(-50%);z-index:12000;display:flex;align-items:center;gap:14px;max-width:calc(100vw - 36px);width:360px;padding:18px 22px;border:1px solid #e7bf7055;border-radius:22px;background:color-mix(in srgb,var(--card) 95%,#e7bf70);box-shadow:0 10px 40px #0003,0 0 25px #e7bf7025;color:var(--ink);animation:pp-reward-arrive .35s ease-out}.pp-completion-reward>svg{width:42px;height:42px;color:#e7bf70;flex:none;filter:drop-shadow(0 0 8px #e7bf7033)}.pp-completion-reward.project>svg{color:#70cfb5}.pp-completion-reward>div{display:grid;gap:4px}.pp-completion-reward strong{font-size:16px}.pp-completion-reward span{font-size:12px}.pp-completion-reward small{font-size:11px;color:var(--muted)}@keyframes pp-reward-arrive{from{opacity:0;translate:0 -12px}to{opacity:1;translate:0 0}}@media(prefers-reduced-motion:reduce){.pp-completion-reward{animation:none}}

.pp-visual-shoot{box-sizing:border-box;min-height:94px;height:94px}.pp-visual-shoot .sd-actions{flex-wrap:nowrap!important}.pp-visual-shoot h3,.pp-visual-shoot .pp-visual-shoot-project{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.pp-shoot-done{width:32px!important;height:32px!important;padding:6px!important;flex:none;border-radius:50%!important}.pp-shoot-done[aria-pressed="true"]{background:var(--success,#36ab80)!important;color:white!important}.pp-visual-shoot .sd-actions .btn{font-size:11px!important}
@media(max-width:760px){.pp-visual-shoot .sd-actions{max-width:none!important}.pp-visual-shoot .sd-actions [data-a="ws:callsheet"]{width:30px;padding:5px;font-size:0!important}.pp-visual-shoot .sd-actions [data-a="ws:callsheet"] svg{width:18px}.pp-visual-shoot{gap:8px!important}.pp-visual-shoot .pp-visual-shoot-cover{width:52px;height:52px;flex-basis:52px}}
html.plan-usability-ui .pp-visual-card .pp-cover-menu{position:absolute!important;top:4px!important;left:4px!important;right:auto!important;z-index:5;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;color:white!important;filter:drop-shadow(0 1px 3px #000);width:28px!important;height:28px!important;padding:4px!important}.pp-project-brief form{display:grid;gap:8px;margin-top:12px}.pp-project-brief textarea{font-size:16px!important;min-height:65px}.pp-stage-summary-row{align-items:flex-start}.pp-stage-summary-row small{white-space:pre-wrap}
.pp-goal-completed-row{display:flex;align-items:center;gap:6px;padding:6px;font-size:12px}.pp-goal-completed-row svg{width:16px;color:var(--green)}.pp-visual-goal-detail .pp-visual-detail-photo>img{height:140px!important}.pp-visual-goal-detail .goal-hero>.grow{padding:10px!important}.pp-visual-goal-detail .goal-hero{margin-top:0!important}.pp-visual-goal-detail .plan-goal-visual:empty{display:none!important}

/* Compact goal photo leaves space for the goal itself. */
.pp-visual-goal-detail .pp-visual-detail-photo{height:140px;margin:0}.pp-visual-goal-detail .modal-body{padding-top:10px}

.pp-visual-goal-detail .plan-goal-visual{display:none!important}
.pp-visual-goal-detail .modal-body{padding-top:6px!important}.pp-visual-goal-detail .pp-visual-detail-summary{padding:10px;margin-block:8px}.pp-visual-goal-detail .goal-hero{margin-bottom:10px!important}
/* Goal workspace shares the app shell and normal document scrolling. */
.pp-goal-page{position:static!important;width:100%!important;max-width:none!important;max-height:none!important;overflow:visible!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;padding:0!important}
.pp-goal-page .modal-head{display:grid!important;grid-template-columns:48px 1fr 48px;position:static!important;padding:8px 0 16px!important;background:transparent!important;border:0!important}.pp-goal-page .modal-head h2{grid-column:2;grid-row:1;text-align:center;font-size:var(--fs-xl)!important}.pp-goal-page .modal-head [data-a="ppGoalPage:back"]{grid-column:1;grid-row:1;justify-self:start}.pp-goal-page .modal-body{overflow:visible!important;max-height:none!important;padding:0!important}.pp-goal-page .modal-body>.form-actions{position:static!important;bottom:auto!important;margin-top:16px;display:flex;flex-wrap:wrap;gap:8px;background:transparent!important;padding:10px 0!important}.pp-goal-page .modal-head::before{display:none!important}
.plan-project-work-tools{display:grid!important;grid-template-columns:48px minmax(0,1fr) auto!important;align-items:center;gap:8px}.plan-project-work-tools>[data-a="plan:projectOverview"]{grid-column:2;grid-row:1;justify-self:center}.plan-project-work-tools>[data-a="ppPolish:library"]{grid-column:1;grid-row:1;justify-self:start}.plan-project-work-tools>.plan-overview-actions{grid-column:3;grid-row:1}
@media(max-width:480px){.plan-project-work-tools{grid-template-columns:36px minmax(0,1fr) auto!important;gap:3px}.plan-project-work-tools .plan-overview-actions{gap:3px}.plan-project-work-tools .icon-btn{width:32px;height:32px}.plan-project-work-tools>[data-a="plan:projectOverview"]{padding-inline:4px;font-size:12px!important}}
.pp-goal-page .modal-head>div{grid-column:2;grid-row:1;width:auto!important;text-align:center}.pp-goal-page .modal-head h2{margin:0!important;text-align:center!important}.view-goals:has(.pp-goal-page)>.pp-page-title{display:none!important}
.plan-project-work-tools{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important}.plan-project-work-tools>.plan-overview-actions{justify-self:end}
@media(max-width:480px){.plan-project-work-tools{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important}}
.pp-goal-page .modal-head{margin:0!important;padding:12px 0!important;align-items:center!important;column-gap:0!important}.pp-goal-page .modal-head h2{display:block!important;justify-content:center!important;line-height:1.6!important}.pp-goal-page .modal-head>div{align-self:center!important}
.plan-project-work-tools>[data-a="plan:projectOverview"]{width:auto!important;max-width:none!important;min-width:max-content!important;white-space:nowrap!important;flex:none!important}
/* Stable app chrome: only the workspace participates in scrolling/pull refresh. */
html.pp-fixed-chrome .main{padding-top:calc(var(--pp-chrome-height,64px) + var(--pp-daily-fixed-height,0px))!important}
html.pp-fixed-chrome body>.pp-fixed-header{position:fixed!important;top:0!important;left:var(--pp-chrome-left,0px)!important;right:auto!important;width:var(--pp-chrome-width,100%)!important;margin:0!important;box-sizing:border-box!important;z-index:70!important;transform:none!important;transition:none!important;animation:none!important;touch-action:pan-x;background:var(--bg)!important}
html.pp-fixed-chrome .pp-fixed-daily-host{position:fixed;top:var(--pp-chrome-height,64px);left:var(--pp-content-left,16px);width:var(--pp-content-width,calc(100% - 32px));z-index:65;padding:0 0 6px;box-sizing:border-box;background:var(--bg);touch-action:pan-x}
html.pp-fixed-chrome .pp-fixed-daily-host .pp-daily-status{margin:0!important;transform:none!important;transition:none!important;animation:none!important}
html.pp-fixed-chrome.v-today .pt-sticky,html.pp-fixed-chrome body.v-today .pt-sticky{position:static!important;transform:none!important;will-change:auto!important}
html.pp-fixed-chrome .view{scroll-margin-top:calc(var(--pp-chrome-height,64px) + var(--pp-daily-fixed-height,0px) + 8px)}
@media print{html.pp-fixed-chrome .main{padding-top:0!important}.pp-fixed-header,.pp-fixed-daily-host{display:none!important}}
/* Remove decorative hover movement and pointer-follow light. */
:is(.card,.goal-card,.pc,.kpi,.acct-card,.proj-tile,.ws-kpi,.scene-card)::before,:is(.goal-card,.pc,.kpi,.acct-card,.proj-tile,.ws-kpi,.scene-card)::after{background:none!important;opacity:0!important;transition:none!important}
:is(.card,.goal-card,.pc,.path-card,.wd,.reflect-card,.acct-card,.stat,.proj-tile,.ws-kpi,.scene-card,.pp-visual-card,button,a):is(:hover,:active){transform:none!important;animation:none!important;transition:none!important}
:is(.view-production,.view-goals) .plan-fin-main-header h1,:is(.view-production,.view-goals) .pp-page-title h1{display:block!important;text-align:center!important;width:100%!important;justify-content:center!important}
:is(.view-production,.view-goals) .plan-fin-main-header{display:grid!important;grid-template-columns:42px minmax(0,1fr) 42px!important;align-items:center!important}:is(.view-production,.view-goals) .plan-fin-main-header>div{grid-column:2;grid-row:1;text-align:center!important}:is(.view-production,.view-goals) .plan-fin-main-header>.icon-btn:first-child{grid-column:1;grid-row:1}:is(.view-production,.view-goals) .plan-fin-main-header>.icon-btn:last-child{grid-column:3;grid-row:1}
.pp-compact-period{border:0!important;background:transparent!important;padding:2px 0!important;margin-block:6px!important}.pp-compact-period .plan-fin-period-tabs{border:0!important;background:transparent!important;display:flex!important;justify-content:center;gap:8px;padding:0!important}.pp-compact-period .plan-fin-period-tabs>button{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;padding:7px!important;border:0!important;border-radius:10px!important}.pp-compact-period svg{width:19px;height:19px}
html.pp-fixed-chrome .pp521-pull{top:calc(var(--pp-chrome-height,64px) + 4px);left:calc(var(--pp-chrome-left,0px) + var(--pp-chrome-width,100vw)/2);width:30px;height:30px}.pp521-pull>span{width:17px;height:17px;border-width:2px}
.pp-rush-check{display:flex!important;align-items:center;gap:8px;padding:6px 8px!important;min-height:32px!important;font-size:12px!important}.pp-rush-check>span,.pp-rush-check>b{font-size:12px!important;line-height:1.5!important}.pp-rush-check>.pt-tick{width:22px!important;height:22px!important;min-width:22px!important;padding:2px!important}

/* Preserve Today ordering while pinning the complete prefix through Daily Status. */
.pp-fixed-daily-host .plan-today-menu-header{margin-top:0!important}.pp-fixed-daily-host .plan-week-strip{margin-bottom:10px}.pp-project-completion{align-self:center;flex:none}.pp-project-completion input{width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important}
html.plan-usability-ui button.pp-timer-play,html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-cover button.pp-timer-play{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;padding:5px!important;border:0!important;outline:0!important;box-shadow:none!important;border-radius:7px!important;font-size:0!important;gap:0!important}
button.pp-timer-play svg{width:18px!important;height:18px!important;min-width:18px!important}.pp-timer-play:focus-visible{outline:2px solid var(--primary)!important;outline-offset:2px}

html.plan-usability-ui.plan-refined-product #main button.pp-timer-play.pp-timer-play,html.plan-usability-ui.plan-refined-product #main .view .pp-visual-grid .pp-visual-card .pp-visual-cover button.pp-timer-play{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;max-width:28px!important;max-height:28px!important;padding:5px!important;border:0!important;box-shadow:none!important;font-size:0!important}html.plan-usability-ui.plan-refined-product #main button.pp-timer-play svg{width:18px!important;height:18px!important}

/* Compact cards with a dedicated right-side reorder slot. */
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-actions{top:9px!important;right:8px!important;width:18px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-heading,html.plan-usability-ui .view .pp-visual-grid .pp-visual-card[data-card-type="goal"] .pp-visual-heading{padding-block-start:0!important;padding-inline-start:27px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card{padding:8px!important;gap:3px 8px!important}.pp-visual-card .pp-visual-cover{min-height:92px!important}
.pp-visual-completion{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:9px;line-height:1.3}.pp-visual-goal-links{gap:0}.pp-visual-card .pp-visual-status{padding-block-start:3px!important}

html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-heading,html.plan-usability-ui .view .pp-visual-grid .pp-visual-card[data-card-type="goal"] .pp-visual-heading{padding-inline-start:38px!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-actions .plan-grip,html.plan-usability-ui .view .pp-visual-grid .pp-visual-card .pp-visual-actions .plan-display-grip{width:18px!important;min-width:18px!important;max-width:18px!important;padding:0!important}
html.pp-fixed-chrome .view-today>.pp-page-title{display:none!important}
/* Native pickers use an opaque theme surface, including their option popup. */
html[data-theme="dark"]{color-scheme:dark}html[data-theme="light"]{color-scheme:light}
html.plan-usability-ui.plan-refined-product select,html.plan-usability-ui.plan-refined-product select option,html.plan-usability-ui.plan-refined-product select optgroup{background-color:var(--card)!important;color:var(--ink)!important;opacity:1!important;-webkit-text-fill-color:var(--ink)!important}
html.plan-usability-ui.plan-refined-product select{border-color:var(--line)!important;font-size:16px!important}html.plan-usability-ui.plan-refined-product select:disabled{color:var(--muted)!important;-webkit-text-fill-color:var(--muted)!important}
html.plan-usability-ui.plan-refined-product [role="listbox"]{background:var(--card)!important;color:var(--ink)!important}html.plan-usability-ui.plan-refined-product [role="option"]{color:var(--ink)!important}

html.plan-usability-ui.plan-refined-product #main .pp-compact-period .plan-fin-period-tabs>button{border:0!important;box-shadow:none!important;outline:0!important}

/* Lift is restricted to an intentional reorder gesture. */
.pp-reorder-ghost.pp-reorder-ghost{position:fixed!important;z-index:15000!important;margin:0!important;box-sizing:border-box!important;pointer-events:none!important;overflow:hidden!important;background:var(--pp-reorder-bg,var(--card))!important;color:var(--ink)!important;border:1px solid color-mix(in srgb,var(--primary) 55%,var(--line))!important;border-radius:16px!important;opacity:.96!important;box-shadow:0 22px 55px #0006,0 3px 12px #0003!important;transform:translate(var(--pp-drag-x,0px),var(--pp-drag-y,0px)) scale(1.015)!important;transition:none!important;animation:none!important;transform-origin:center!important}
.pp-reorder-source.pp-reorder-source{opacity:.25!important;outline:1px dashed var(--primary)!important;outline-offset:2px!important;transform:none!important}
html.pp-reordering,html.pp-reordering *{cursor:grabbing!important;user-select:none!important}.plan-display-drop,.is-drop-target{outline:2px solid var(--primary)!important;outline-offset:3px!important}
.pp-fixed-daily-host .plan-review-buttons{margin-bottom:10px!important}
html.plan-usability-ui.plan-refined-product .pp-fixed-daily-host .plan-review-buttons{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;margin:6px 0 10px!important}
html.plan-usability-ui.plan-refined-product .pp-fixed-daily-host .plan-review-buttons>button{height:32px!important;min-height:32px!important;padding:4px 12px!important;flex-direction:row!important;gap:6px!important;font-size:13px!important}
.pp-fixed-daily-host .plan-review-buttons>button svg{width:16px!important;height:16px!important}

/* A short milestone row, with its own activities directly underneath. */
html.plan-usability-ui .pp-goal-page .detail-grid{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;margin-block:6px!important}
html.plan-usability-ui .pp-goal-page .detail-grid>section{margin:0!important;padding:8px 10px!important;grid-column:1!important}
html.plan-usability-ui .pp-goal-page .roadmap{display:grid!important;gap:5px!important;margin:0!important;padding:0!important}
html.plan-usability-ui .pp-goal-page .rm-step{margin:0!important;padding:5px 7px!important;min-height:0!important;border-radius:9px!important}
html.plan-usability-ui .pp-goal-page .rm-head{display:flex!important;align-items:center!important;gap:6px!important;padding:0!important;min-height:28px!important}
html.plan-usability-ui .pp-goal-page .rm-head .rm-t{flex:1!important;min-width:0!important;min-height:0!important;padding:1px 0!important;text-align:start!important;border:0!important;background:transparent!important}
html.plan-usability-ui .pp-goal-page .rm-t b{font-size:12px!important;line-height:1.5!important}.pp-goal-page .rm-t small,.pp-goal-page .rm-t em{font-size:10px!important;line-height:1.4!important;margin:1px 0!important}
html.plan-usability-ui .pp-goal-page .rm-head>.rm-add{flex:0 0 26px!important;width:26px!important;height:26px!important;min-height:26px!important;min-width:26px!important;padding:4px!important;margin:0!important;border:0!important;background:transparent!important;font-size:0!important;color:var(--primary)!important}
.pp-goal-page .rm-add svg{width:18px!important;height:18px!important}.pp-goal-page .rm-flag svg{width:15px!important;height:15px!important}
html.plan-usability-ui .pp-goal-page .rm-tasks{display:grid;gap:3px!important;margin:4px 24px 0 0!important;padding:0!important}.pp-goal-page .rm-tasks[hidden]{display:none!important}
html.plan-usability-ui .pp-goal-page .rm-task{margin:0!important;padding:4px 6px!important;gap:6px!important;min-height:0!important;border-radius:7px!important}.pp-goal-page .rm-task.done b{text-decoration:line-through;opacity:.7}
.pp-goal-page .rm-count{font-size:10px!important;white-space:nowrap}.pp-goal-page .pp-goal-fold[open]>summary{margin-bottom:6px!important}
html.plan-usability-ui .pp-goal-page .goal-add{gap:5px!important;margin:6px 0!important}.pp-goal-page .goal-add .btn{min-height:28px!important;padding:4px 7px!important;font-size:11px!important}.pp-goal-page .goal-hero{margin-bottom:6px!important}.pp-goal-page .pp-visual-detail-summary{margin:6px 0!important}.pp-goal-page .pp-goal-fold-body>.linked{gap:4px!important}
html.plan-usability-ui.plan-refined-product .view .pp-visual-card .pp-visual-goal-links{gap:6px!important}
html.plan-usability-ui.plan-refined-product .view .pp-visual-card .pp-visual-goal-links .icon-btn{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;padding:4px!important;border:0!important;box-shadow:none!important;outline:0!important;border-radius:0!important;background:transparent!important}
html.plan-usability-ui.plan-refined-product .view .pp-visual-card .pp-visual-goal-links .icon-btn svg{width:22px!important;height:22px!important}.pp-visual-goal-links .icon-btn:focus-visible{outline:2px solid var(--primary)!important;outline-offset:2px}

html.plan-usability-ui #main .pp-visual-detail-cover>.pp-project-photo-timer{position:absolute!important;top:calc(var(--pp-cover-height,230px)/2)!important;left:50%!important;transform:translate(-50%,-50%)!important;z-index:2;color:white!important;background:#101927b3!important;border:0!important}
@media(max-width:760px){.pp-visual-detail-cover{--pp-cover-height:190px}}
html.plan-usability-ui #main .pp-goal-page .rm-head>.rm-add{border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}
.pp-goal-page .deep{margin-block:6px!important;padding:8px!important}.pp-goal-page .form-actions{margin-top:6px!important;gap:6px!important}


.pp-goal-progress-sheet .modal-body{padding:12px!important}.pp-goal-progress-sheet form{display:grid;gap:10px}.pp-goal-progress-list{display:grid;gap:4px;max-height:55vh;overflow:auto}.pp-goal-progress-list label{display:flex;align-items:center;gap:9px;padding:7px 4px;font-size:12px;line-height:1.6}.pp-goal-progress-list input{width:17px;height:17px;accent-color:var(--primary)}.pp-goal-progress-sheet .field{margin:0!important}.pp-goal-progress-sheet button[type=submit]{font-size:12px!important;padding:7px 12px!important;min-height:32px!important}

/* Existing goal controls live only in the goal's main card. */
.pp-goal-hero-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;margin-top:8px}
.pp-goal-hero-actions{display:flex;align-items:center;gap:4px;margin-inline-start:auto;flex-shrink:0}
html.plan-usability-ui #main .pp-goal-hero-actions .pp-goal-icon-action{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;padding:6px!important;gap:0!important;border:0!important;background:transparent!important;box-shadow:none!important;font-size:0!important}
.pp-goal-hero-actions .pp-goal-icon-action svg{width:20px!important;height:20px!important}
.pp-goal-hero-actions .pp-goal-icon-action:focus-visible{outline:2px solid var(--primary);outline-offset:2px}

html.plan-usability-ui #main .pp-goal-hero-actions .pp-goal-icon-action{color:var(--ink)!important}
html.plan-usability-ui #main .pp-goal-hero-actions [data-a="goal:delete"]{color:var(--red)!important}
/* The same icon strip serves long-press and context actions throughout the app. */
html body #modalRoot .pp-icon-context-backdrop{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;display:block!important;padding:0!important}
html body #modalRoot .modal.pp-icon-context{position:fixed!important;inset:auto;width:max-content!important;max-width:calc(100vw - 16px)!important;min-width:0!important;min-height:0!important;max-height:calc(100dvh - 100px)!important;margin:0!important;padding:6px!important;border:1px solid var(--line)!important;border-radius:16px!important;background:var(--card)!important;box-shadow:0 8px 24px #0003!important;animation:none!important;transform:none!important;overflow:auto!important}
html body #modalRoot .modal.pp-icon-context::before,html body #modalRoot .modal.pp-icon-context::after{display:none!important}
html body #modalRoot .pp-icon-context .modal-body{padding:0!important;overflow:visible!important}
html body #modalRoot .pp-icon-context .plan-reference-actions{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:2px!important;margin:0!important;padding:0!important;max-width:264px}
html body #modalRoot .pp-icon-context .plan-reference-actions .btn{display:inline-flex!important;align-items:center;justify-content:center;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;max-width:42px!important;padding:10px!important;margin:0!important;flex:0 0 42px!important;gap:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--ink)!important;font-size:0!important;border-radius:10px!important}
html body #modalRoot .pp-icon-context .plan-reference-actions .btn.danger{color:var(--red)!important}
html body #modalRoot .pp-icon-context .plan-reference-actions .btn svg{width:22px!important;height:22px!important}
html body #modalRoot .pp-icon-context .plan-reference-actions .btn:hover,html body #modalRoot .pp-icon-context .plan-reference-actions .btn:focus-visible{background:color-mix(in srgb,var(--primary) 14%,transparent)!important}
html body #modalRoot .pp-icon-context .plan-reference-actions .btn:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}

.pp-goal-hero-footer{width:100%;align-self:stretch;box-sizing:border-box}
.pp-project-card-actions{display:flex;align-items:center;justify-content:flex-start;direction:ltr;gap:4px;width:100%;margin-top:8px}
html.plan-usability-ui #main .pp-project-card-actions .pp-project-icon-action{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;padding:6px!important;gap:0!important;border:0!important;background:transparent!important;box-shadow:none!important;font-size:0!important;border-radius:8px!important}
.pp-project-card-actions .pp-project-icon-action svg{width:20px!important;height:20px!important}
html.plan-usability-ui #main :is(.pp-goal-hero-actions .pp-goal-icon-action,.pp-project-card-actions .pp-project-icon-action){color:var(--primary)!important}
html.plan-usability-ui #main :is(.pp-goal-hero-actions [data-a="goal:delete"],.pp-project-card-actions [data-a="plan:deleteProjectConfirm"]){color:var(--red)!important}
.pp-project-card-actions .pp-project-icon-action:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.pp-project-card-actions .pp-project-icon-action:disabled{opacity:.35!important}

/* Shared semantic tokens. Preserve the product layout and user text scaling. */
:root {
 --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;
 --radius-control:12px;--radius-card:20px;--radius-dialog:20px;
 --text-page-title:18px;--text-section-title:15px;--text-card-title:16px;--text-body:15px;--text-label:13px;--text-meta:12px;--text-caption:11px;
 --weight-title:650;--weight-label:550;--border-width:1px;
 --shadow-card:0 4px 16px color-mix(in srgb,var(--ink) 5%,transparent);
 --focus-ring:2px solid var(--primary);
}
/* The fixed prefix is a layout host, not another painted card. */
html.pp-fixed-chrome .pp-fixed-daily-host {background:transparent!important;border:0!important;outline:0;box-shadow:none!important}
.pp-fixed-daily-host>.pp-daily-status {border-radius:var(--radius-card);box-shadow:none}
:is(.view-production,.view-goals,.view-money,.view-more,.view-settings,.view-health,.view-actions) :is(.pp-page-title,.plan-navigation-header h1) {font-size:var(--text-page-title)!important;font-weight:var(--weight-title)!important;line-height:1.6}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card {border-radius:var(--radius-card)!important;box-shadow:var(--shadow-card)!important;padding:var(--space-3)!important}
html.plan-usability-ui .view .pp-visual-grid .pp-visual-card h2 {font-size:var(--text-card-title)!important;font-weight:var(--weight-title)!important}
.pp-visual-card :is(.plan-goal-reference-heading p,.pp-visual-status) {font-size:var(--text-meta)!important}
.pp-visual-card :is(.plan-goal-reference-meta,.pp-visual-progress small) {font-size:var(--text-caption)!important}
.pp-visual-detail-cover h2,.pp-goal-page .modal-head h2 {font-size:var(--text-page-title)!important;font-weight:var(--weight-title)!important}
.pp-goal-page .modal-body>.form-actions {display:none}
.modal:not(.pp-icon-context) {border-radius:var(--radius-dialog)}
.modal:not(.pp-icon-context) .modal-head h2 {font-size:var(--text-page-title)!important;font-weight:var(--weight-title)!important;line-height:1.6}
:where(.modal,.view) :is(input:not([type]),input[type=text],input[type=email],input[type=tel],input[type=number],input[type=password],input[type=url],input[type=search],textarea,select) {border-radius:var(--radius-control);box-sizing:border-box;min-width:0;max-width:100%;color:var(--ink);border-color:var(--line)}
:where(.modal,.view) :is(input,textarea)::placeholder {color:var(--muted);opacity:1}
:where(.modal,.view) :is(input,textarea,select,button,a):focus-visible {outline:var(--focus-ring);outline-offset:2px}
.pp-daily-summary .pp-daily-greeting {font-size:var(--text-label)!important;gap:var(--space-1);white-space:nowrap}
.pp-daily-greeting .pp-daily-icon {width:18px;height:18px}
@media(min-width:600px){.pp-daily-summary .pp-daily-greeting {font-size:var(--text-card-title)!important}.pp-daily-greeting .pp-daily-icon{width:20px;height:20px}}
/* Distinct empty/complete cells in both light and dark surfaces. */
.pp-visual-tiles i:not(.complete),.pp-daily-tile:not(.is-complete) {background:color-mix(in srgb,var(--muted) 30%,var(--card));border-color:color-mix(in srgb,var(--muted) 36%,var(--line))}
@media(prefers-reduced-transparency:reduce){.pp-icon-context,.modal{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:var(--card)!important}}

html.pp-fixed-chrome .view-today {clip-path:inset(var(--pp-workspace-clip-top,0px) 0 0)}
html.pp-fixed-chrome .view-today .pt-sticky:empty {display:none!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important}

/* Only the existing Liquid Glass skin consumes these tokens. */
html.pt-glass{
 --lg-blur:blur(var(--glass-blur,20px)) saturate(var(--glass-saturation,1.5));
 --lg-tint:color-mix(in srgb,var(--card) var(--glass-surface-percent,59%),transparent);
 --lg-tint-strong:var(--lg-tint);
 --lg-edge:color-mix(in srgb,var(--ink) var(--glass-border-percent,20%),transparent);
 --lg-edge-soft:var(--lg-edge);
 --lg-shine:inset 0 1px 0 color-mix(in srgb,var(--ink) var(--glass-highlight-percent,15%),transparent);
 --lg-shadow:0 6px 20px color-mix(in srgb,var(--ink) var(--glass-shadow-percent,12%),transparent);
 --glass-surface:linear-gradient(115deg,color-mix(in srgb,var(--primary) var(--glass-tint,8%),transparent),transparent 65%),var(--lg-tint);
}
html.pt-glass.pp-fixed-chrome body>.pp-fixed-header,
html.pt-glass .pp-fixed-daily-host,
html.pt-glass .pp-glass-sticky,
html.pt-glass .plan-work-hub-header,
html.pt-glass .plan-navigation-header,
html.pt-glass .plan-today-menu-header{
 background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
html.pt-glass .view-today{clip-path:none!important}
html.pt-glass :is(.pp-visual-segments,.pp-four-filters,.plan-week-strip,.pp-daily-status,.plan-global-timer,.m-timer,.m-tabs),
html.pt-glass .pp-fixed-header :is(.m-nb,.icon-btn,.btn,.m-heart),
html.pt-glass .plan-today-menu-header>button,
html.pt-glass .plan-review-buttons>button{
 background:var(--glass-surface)!important;border:1px solid var(--lg-edge)!important;box-shadow:var(--lg-shine),var(--lg-shadow)!important;backdrop-filter:var(--lg-blur)!important;-webkit-backdrop-filter:var(--lg-blur)!important;color:var(--ink);
}
html.pt-glass :is(.pp-visual-segments,.pp-four-filters,.plan-week-strip,.m-tabs) :is(button,.icon-btn){backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important}
html.pt-glass :is(.pp-visual-segments,.pp-four-filters,.plan-week-strip)>button:not([aria-pressed="true"]):not(.on):not(.active):not(.primary):not(.selected):not([aria-current="date"]){background:transparent!important}
html.pt-glass :is(.pp-visual-segments,.pp-four-filters)>button[aria-pressed="true"]{background:color-mix(in srgb,var(--primary) 24%,transparent)!important;color:var(--ink)!important}
html.pt-glass :is(.pp-visual-detail-cover,.pp-visual-grid,.plan-page-widget,.plan-section):has(>.pp-visual-card){backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:transparent!important;box-shadow:none!important}
html.pt-glass .pp-daily-status::before{opacity:var(--glass-highlight-opacity,.15)}
html.pt-glass .pp-glass-sticky{position:sticky!important;top:calc(var(--pp-chrome-height,64px) + 8px)!important;z-index:60;padding-bottom:8px}
html.pt-glass .pp-activities-header{overflow:visible!important;flex:none}
html.pt-glass .pp-activities-main .view{overflow:visible!important}
html.pt-glass .pp-activities-content{overflow:visible!important;max-height:none!important;height:auto!important}
.pp-four-filters{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px;padding:6px;border-radius:var(--radius-control,12px)}
.pp-four-filters>button{min-width:0;min-height:40px;height:auto!important;display:flex;justify-content:center;align-items:center;gap:6px;font-size:13px;line-height:1.5;padding:8px!important}
.pp-four-filters small{font-size:11px;color:var(--muted)}
.pp-account-data{margin-top:16px}
@media(max-width:600px){.pp-four-filters{grid-template-columns:repeat(2,minmax(0,1fr))!important}.pp-four-filters>button{min-height:40px}}
@media(prefers-reduced-transparency:reduce){html.pt-glass{--lg-tint:color-mix(in srgb,var(--card) 94%,transparent)}}
@media print{.pp-glass-sticky{position:static!important}}
html.pt-glass.pp-activities-page .main.pp-activities-main{overflow:visible!important;height:auto!important;min-height:100dvh}
html.pt-glass.pp-activities-page .main.pp-activities-main>.view{display:block!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}
html.pt-glass.pp-activities-page .pp-activities-content{height:auto!important;max-height:none!important;overflow:visible!important;flex:none!important}
html.pt-glass.pp-activities-page .pp-activities-header{position:sticky!important;top:calc(var(--pp-chrome-height,60px) + 8px)!important;z-index:60;background:transparent!important}
html.pt-glass.pp-activities-page{overflow-x:hidden!important;overflow-y:auto!important;height:auto!important;min-height:100%}
html.pt-glass.pp-activities-page body{overflow:visible!important;height:auto!important;min-height:100dvh}
/* Settings share the product's compact spacing and theme-derived controls. */
.v-settings .set-split{gap:20px;align-items:start;padding-top:16px}
.v-settings .settings-hub{padding-top:0}
.v-settings .settings-hub h3{font-size:12px;letter-spacing:0;margin:18px 12px 8px;color:var(--muted)}
.v-settings .settings-hub .ios-row{min-height:46px;padding:10px 14px}
.v-settings :is(.set-detail,.set-sub) .plan-fin-widget-header{min-height:48px;padding:12px 18px!important}
.v-settings :is(.set-detail,.set-sub) .plan-fin-widget-title h2{font-size:16px;line-height:1.6}
.v-settings :is(.set-detail,.set-sub) .plan-page-widget-body{padding:18px!important}
.v-settings :is(.set-detail,.set-sub) .plan-panel-original{padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.v-settings :is(.set-detail,.set-sub) :is(h3,.mt){font-size:13px;line-height:1.7;margin:22px 0 10px;color:var(--muted)}
.v-settings :is(.set-detail,.set-sub) h3:first-child{margin-top:0}
.v-settings .set-theme .plan-appearance-modes{gap:8px}
.v-settings .set-theme .plan-appearance-modes button{min-height:52px;padding:10px 12px;gap:7px;border-radius:12px;border:1px solid var(--border);background:color-mix(in srgb,var(--card) 70%,transparent);color:var(--muted);box-shadow:none}
.v-settings .set-theme .plan-appearance-modes button[aria-pressed=true]{background:color-mix(in srgb,var(--primary) 14%,var(--card));border-color:color-mix(in srgb,var(--primary) 60%,var(--border));color:var(--ink);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 16%,transparent)}
.v-settings .set-theme .plan-appearance-modes .ic{width:20px;height:20px}
.v-settings .set-theme .plan-accent-grid{gap:10px 6px}
.v-settings .set-theme .plan-accent-chip{min-height:60px;padding:6px;gap:6px;font-size:11px}
.v-settings .set-theme .plan-accent-chip i{width:26px;height:26px}
.v-settings .set-theme .pp5-glass-level{padding:14px 16px;border-radius:12px;background:color-mix(in srgb,var(--primary) 5%,var(--card));border:1px solid var(--border);margin-top:12px}
.v-settings .set-theme .pp5-gl-ends{font-size:11px}
.v-settings .set-theme input[type=range]{accent-color:var(--primary)}
.v-settings :is(.set-detail,.set-sub) :is(input,select,textarea){border-radius:10px}
.v-settings :is(.set-detail,.set-sub) :is(.btn,button.primary,button.ghost){border-radius:10px;min-height:36px}
.v-settings :is(.set-detail,.set-sub) .font-row{gap:12px;flex-wrap:wrap}
.v-settings :is(.set-detail,.set-sub) .font-row .seg{border:0;background:transparent;gap:4px;flex-wrap:wrap}
.v-settings :is(.set-detail,.set-sub) .font-row .seg label{border-radius:8px}
.v-settings :is(.set-detail,.set-sub) .font-row .seg label:has(input:checked){color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent)}
@media(max-width:700px){.v-settings .set-split{padding-top:8px;gap:12px}.v-settings :is(.set-detail,.set-sub) .plan-page-widget-body{padding:14px!important}.v-settings .set-theme .plan-accent-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
html.pt-glass :is(.view-production,.view-goals,.view-money) .pt-sticky{background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
:is(.view-production,.view-goals,.view-money) .pp-visual-segments{outline:0!important;width:100%;min-width:0;border:1px solid var(--border)!important}
html.pt-glass .pp-visual-segments{border:1px solid var(--lg-edge)!important;box-shadow:var(--lg-shine)!important}
html.pt-glass.pp-fixed-chrome .pp-fixed-header::before{content:"";position:absolute;inset:-12px 0 0;z-index:-1;pointer-events:none;background:linear-gradient(to bottom,var(--bg) 0%,color-mix(in srgb,var(--bg) 94%,transparent) 20%,color-mix(in srgb,var(--bg) 72%,transparent) 70%,transparent 100%);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);mask-image:linear-gradient(to bottom,#000 70%,transparent)}

.plan-project-library-tools .plan-overview-controls,.plan-project-library-tools .plan-toolbar{width:100%;min-width:0;display:block!important}
.plan-project-library-tools .pp-visual-segments{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px}
.plan-project-library-tools .pp-visual-segments>button{min-width:0;padding:8px 4px!important;font-size:12px;white-space:nowrap}
/* Scrolled text is masked at the top edge, while individual controls stay glass. */
html.pt-glass.pp-fixed-chrome .pp-fixed-header{isolation:isolate}
html.pt-glass.pp-fixed-chrome .pp-fixed-header::before{z-index:0;background:linear-gradient(to bottom,var(--bg) 0%,var(--bg) 78%,color-mix(in srgb,var(--bg) 96%,transparent) 92%,transparent 100%);mask-image:none;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
html.pt-glass.pp-fixed-chrome .pp-fixed-header>*{position:relative;z-index:1}
/* A quiet glass surface: no ambient coloured glow around menus. */
html.pt-glass{--lg-shadow:0 4px 14px rgb(0 0 0 / var(--glass-shadow-opacity,.12))}
html.pt-glass body{background-image:none!important;background-color:var(--bg)!important}
html.pt-glass .pp-daily-status::before{display:none!important}
html.pt-glass :is(.pp-fixed-header button,.pp-fixed-daily-host button,.pp-daily-status,.pp-visual-segments,.pp-four-filters,.m-tabs){box-shadow:var(--lg-shine)!important}
html.pt-glass :is(.view-production,.view-goals,.view-money) .pt-sticky>.plan-navigation-header{background:var(--glass-surface)!important;backdrop-filter:var(--lg-blur)!important;-webkit-backdrop-filter:var(--lg-blur)!important;border-radius:12px;box-shadow:none!important}
html.pt-glass.pp-fixed-chrome body[class]{background-image:none!important;background-color:var(--bg)!important}
html.pt-glass.pp-fixed-chrome :is(.view-production,.view-goals,.view-money) .pp-visual-segments{border:1px solid var(--lg-edge)!important;box-shadow:var(--lg-shine)!important}
html.pt-glass.pp-fixed-chrome :is(.pp-fixed-header button,.pp-fixed-daily-host button,.pp-daily-status,.pp-visual-segments,.pp-four-filters,.m-tabs){box-shadow:var(--lg-shine)!important}
html.pt-glass.pp-fixed-chrome :is(.view-production,.view-goals,.view-money) .pt-sticky>.plan-navigation-header>button{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
/* Glass blurs its contents, never feathers the outline of a surface. */
html.pt-glass.pp-fixed-chrome :is(.card,.plan-fin-widget,.plan-page-widget,.plan-section,.pp-visual-card,.plan-item,.ios-group,.plan-appearance-modes button,.pp5-glass-level,.pp-fixed-header button,.pp-fixed-daily-host button,.pp-daily-status,.pp-visual-segments,.pp-four-filters,.m-tabs,.m-timer,.plan-global-timer,.modal,.dialog){box-shadow:none!important;filter:none!important}
html.pt-glass #main :is(.card,.plan-fin-widget,.plan-page-widget,.plan-section,.pp-visual-card,.plan-item,.ios-group,.plan-appearance-modes button,.pp5-glass-level,.pp-fixed-header button,.pp-fixed-daily-host button,.pp-daily-status,.pp-visual-segments,.pp-four-filters,.m-timer,.plan-global-timer){box-shadow:none!important;filter:none!important}
html.pt-glass.pp-fixed-chrome body[class] .m-bottom .m-tabs{box-shadow:none!important;filter:none!important}
/* Shared modest corner curves for framed surfaces, independent of the skin. */
html{--pp-corner-panel:14px;--pp-corner-control:10px}
html body #main :is(.card,.plan-fin-widget,.plan-page-widget,.plan-section,.pp-visual-card,.plan-project,.plan-goal-reference,.ios-group,.pp-daily-status,.plan-resolve,.plan-week-strip,.pp-visual-segments,.pp-four-filters,.plan-navigation-header){border-radius:var(--pp-corner-panel)!important}
html body #main :is(.btn,.icon-btn,input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select,.plan-appearance-modes button,.pp5-glass-level,.plan-fin-periods button){border-radius:var(--pp-corner-control)!important}
html body :is(.modal,.dialog,.plan-fin-drawer,.plan-fin-drawer-overlay>.plan-fin-drawer,.context-menu){border-radius:var(--pp-corner-panel)!important}
html.pt-glass #main :is(.view-money,.view-production,.view-goals)>.pt-sticky>.plan-navigation-header{background:var(--glass-surface)!important;backdrop-filter:var(--lg-blur)!important;-webkit-backdrop-filter:var(--lg-blur)!important;border:0!important;box-shadow:none!important;border-radius:var(--pp-corner-panel)!important}

/* Keep menu controls and hit areas; remove only their outline. */
html body #main :is(.view-production,.view-goals) button:has(>svg.i-dots){border-color:transparent!important;outline:0!important;box-shadow:none!important}
html.pt-glass body #main button:has(>svg.i-menu){border-color:transparent!important;outline:0!important;box-shadow:none!important}
/* Calendar labels follow the active palette in every skin. */
html body #main .plan-menu-calendar,html body #main .plan-menu-calendar span{color:var(--ink)!important}
html body #main .plan-week-strip>button:is(.selected,[aria-current="date"]){background:color-mix(in srgb,var(--primary) 20%,var(--card))!important;color:var(--ink)!important}
html body #main .plan-week-strip>button:is(.selected,[aria-current="date"]) :is(small,b,span){color:inherit!important}
html.pt-glass #main :is(.pp-visual-segments,.pp-four-filters)>button:is(.primary,[aria-pressed="true"]){background:color-mix(in srgb,var(--primary) 24%,transparent)!important;color:var(--ink)!important}
html.pt-glass #main .pp-activities-header>.plan-navigation-header{background:var(--glass-surface)!important;backdrop-filter:var(--lg-blur)!important;-webkit-backdrop-filter:var(--lg-blur)!important;border:0!important;box-shadow:none!important;border-radius:var(--pp-corner-panel)!important}
html.pt-glass #main .pp-activities-header>.plan-navigation-header>button{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

/* Calendar quick action uses the selected accent; the central date is firmer. */
html body button[data-quick="0"],html body button[data-a="day:today"]{color:var(--primary)!important}
html body #main .plan-today-menu-header .plan-menu-calendar,html body #main .plan-today-menu-header .plan-menu-calendar span{font-weight:650!important}
/* Library menu actions share one row and baseline, with no separate tiles. */
html body #main :is(.view-production,.view-goals) .plan-navigation-header{position:relative!important;grid-template-columns:44px minmax(0,1fr) 44px!important;align-items:center!important}
html body #main :is(.view-production,.view-goals) .plan-navigation-header>.pp-visual-library-options{position:static!important;inset:auto!important;grid-column:3;grid-row:1;align-self:center!important;justify-self:center!important;width:44px!important;height:44px!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html body #main :is(.view-production,.view-goals) .plan-navigation-header>.plan-navigation-menu-button{grid-column:1;grid-row:1;align-self:center!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
/* Normal Today surfaces stay opaque: scrolling rows cannot cast moving tint below them. */
html:not(.pt-glass).pp-fixed-chrome #main .pp-fixed-daily-host>.pp-daily-status{background:linear-gradient(115deg,color-mix(in srgb,var(--daily-accent) 12%,var(--card)),var(--card) 58%,color-mix(in srgb,var(--daily-accent) 6%,var(--card)))!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;filter:none!important}
html:not(.pt-glass).pp-fixed-chrome #main .pp-fixed-daily-host>.pp-daily-status::before,html:not(.pt-glass).pp-fixed-chrome #main .pp-fixed-daily-host>.pp-daily-status::after{display:none!important}
/* Opaque fixed prefix masks scrolling content without a moving clipping edge. */
html:not(.pt-glass).pp-fixed-chrome #main .pp-fixed-daily-host{background:var(--bg)!important;isolation:isolate;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html:not(.pt-glass).pp-fixed-chrome #main .pp-fixed-daily-host::before{content:"";position:absolute;inset:0 -16px;z-index:-1;background:var(--bg);pointer-events:none;box-shadow:none;filter:none}
html:not(.pt-glass).pp-fixed-chrome #main .view-today{clip-path:none!important}
/* Photo timer positioning must also win over the global hover transform reset. */
html.plan-usability-ui.plan-refined-product #main :is(.pp-visual-cover,.pp-visual-detail-cover) :is(button.plan-project-start,button.pp-project-photo-timer),html.plan-usability-ui.plan-refined-product #main :is(.pp-visual-cover,.pp-visual-detail-cover) :is(button.plan-project-start,button.pp-project-photo-timer):is(:hover,:active,:focus,:focus-visible){position:absolute!important;inset:auto!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;opacity:1!important;visibility:visible!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;transition:none!important;animation:none!important;z-index:3}

/* All Activities uses the complete workspace and one compact icon row on phones too. */
html body #main .pp-four-filters{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;width:100%!important;box-sizing:border-box}
html body #main .pp-four-filters>button{height:38px!important;min-height:38px!important;padding:7px!important}
html body #main .pp-four-filters>button svg{width:22px;height:22px}
html body #main.pp-activities-main>.view,html body #main.pp-activities-main .pp-activities-content,html body #main.pp-activities-main .plan-hub-list{width:100%!important;max-width:none!important;max-height:none!important;height:auto!important;overflow:visible!important;box-sizing:border-box}
html body #main.pp-activities-main>.view{display:block!important;min-height:calc(100dvh - var(--pp-chrome-height,64px) - 70px)!important}
/* The grouped owner is already named once in its heading. */
html body #main .plan-display-group[data-group-mode="goal"] .plan-activity-owners,html body #main .plan-display-group[data-group-mode="goal"] .plan-links{display:none!important}
html.plan-usability-ui.plan-refined-product #main .pp-activities-header nav.pp-four-filters.pp-four-filters{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-flow:row!important;gap:6px!important}
/* One bounded scroll owner in All Activities, in every appearance mode. */
html.pp-activities-page,html.pp-activities-page body{height:100%!important;min-height:0!important;overflow:hidden!important}
html.pp-activities-page body #main.pp-activities-main{display:flex!important;flex-direction:column!important;height:var(--plan-visible-height,100dvh)!important;min-height:0!important;overflow:hidden!important}
html.pp-activities-page body #main.pp-activities-main>.view{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:hidden!important}
html.pp-activities-page body #main.pp-activities-main .pp-activities-header{position:static!important;flex:0 0 auto!important;min-height:0!important}
html.pp-activities-page body #main.pp-activities-main .pp-activities-content{flex:1 1 auto!important;height:auto!important;min-height:0!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding-bottom:90px}
/* Compact preferences: one sheet, short labelled rows, no secondary settings column. */
html body #main.pp-theme-page .settings-hub{display:none!important}
html body #main.pp-theme-page .set-split{display:block!important;padding-top:8px!important}
html body #main.pp-theme-page .set-theme{width:100%!important;max-width:760px!important;margin:0 auto!important}
html body #main.pp-theme-page .set-theme .plan-page-widget-body{padding:16px 20px!important}
html body #main.pp-theme-page .pp-theme-back{display:inline-flex;align-items:center;gap:6px;padding:2px 0 10px;min-height:32px;background:transparent;border:0;color:var(--primary);font-size:12px;box-shadow:none}
html body #main.pp-theme-page .pp-theme-back svg{width:16px;height:16px}
html body #main.pp-theme-page .pp-theme-row{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px 12px;align-items:center;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 65%,transparent)}
html body #main.pp-theme-page .pp-theme-row:last-child{border-bottom:0;padding-bottom:0}
html body #main.pp-theme-page .pp-theme-row>h3{display:block!important;font-size:12px!important;font-weight:600;margin:0!important;color:var(--muted);line-height:1.7}
html body #main.pp-theme-page .pp-theme-row .plan-appearance-modes{margin:0!important;gap:6px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
html body #main.pp-theme-page .pp-theme-row .pp5-skins{grid-template-columns:repeat(2,minmax(0,1fr))}
html body #main.pp-theme-page .pp-theme-row .plan-appearance-modes button{min-height:38px!important;padding:7px 8px!important;font-size:12px;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:6px}
html body #main.pp-theme-page .pp-theme-row .plan-appearance-modes svg{width:18px;height:18px}
html body #main.pp-theme-page .plan-accent-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:4px!important;margin:0!important}
html body #main.pp-theme-page .plan-accent-chip{min-height:49px!important;padding:3px!important;font-size:10px!important;gap:3px!important;border:0!important;background:transparent!important;box-shadow:none!important}
html body #main.pp-theme-page .plan-accent-chip i{width:25px!important;height:25px!important}
html body #main.pp-theme-page .pp5-glass-level{grid-column:2;margin:0!important;padding:8px 10px!important;font-size:11px!important}
html body #main.pp-theme-page .pp-theme-type .font-row{gap:6px;align-items:center;margin:0!important}
html body #main.pp-theme-page .pp-theme-type .seg{display:flex!important;gap:2px!important}
html body #main.pp-theme-page .pp-theme-type .seg label{padding:5px 7px!important;font-size:11px!important;min-height:30px}
html body #main.pp-theme-page .pp-theme-type .icon-btn{min-height:30px!important;width:30px!important;height:30px!important;font-size:12px}
html body #main.pp-theme-page .font-demo{grid-column:2;margin:0!important;font-size:var(--font-base,14px);line-height:1.8;padding:8px 10px;background:color-mix(in srgb,var(--primary) 5%,var(--card));border-radius:10px}
@media(max-width:600px){
 html body #main.pp-theme-page .set-theme .plan-page-widget-body{padding:12px!important}
 html body #main.pp-theme-page .pp-theme-row{grid-template-columns:1fr;gap:7px;padding:10px 0}
 html body #main.pp-theme-page .pp-theme-row>h3{font-size:11px!important}
 html body #main.pp-theme-page :is(.pp5-glass-level,.font-demo){grid-column:1}
 html body #main.pp-theme-page .pp-theme-type .seg{width:100%;justify-content:space-between}
}
html body #main.pp-theme-page .pp-theme-type .seg{flex-wrap:nowrap!important;align-items:stretch!important;min-width:0!important}
html body #main.pp-theme-page .pp-theme-type .seg label{position:relative;flex:1 1 0!important;min-width:0!important;width:auto!important;min-height:32px!important;height:auto!important;display:flex!important;align-items:center;justify-content:center;text-align:center;box-sizing:border-box;line-height:1.5!important;white-space:normal!important}
html body #main.pp-theme-page .pp-theme-type .seg label input{position:absolute;opacity:0;width:1px;height:1px}
html body #main.pp-theme-page .pp-theme-type .seg label span{display:block!important;padding:0!important;margin:0!important;font-size:11px!important;background:transparent!important;border:0!important;box-shadow:none!important;min-width:0!important;min-height:0!important}
html body #main.pp-theme-page .pp-theme-type .seg label:focus-within{outline:2px solid var(--primary);outline-offset:2px}
html body #main.pp-theme-page .pp-theme-type .seg label{color:var(--muted)!important}
html body #main.pp-theme-page .pp-theme-type .seg label:has(input:checked){color:var(--ink)!important;background:color-mix(in srgb,var(--primary) 16%,var(--card))!important}
html body #main.pp-theme-page .pp-theme-type .seg label span{color:inherit!important}
/* Mobile libraries scroll inside the app, so Safari's document rubber-band cannot
   pull fixed chrome down. Keep page navigation above that content as on Today. */

/* The floating add control keeps its colour within a clean circular edge. */
html body button.m-fab,html.pt-glass body button.m-fab,html body button.m-fab:is(:hover,:active,:focus){box-shadow:none!important;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:hidden;isolation:isolate}
html body button.m-fab::before,html body button.m-fab::after{box-shadow:none!important;filter:none!important}
/* Grid gap owns the spacing in both libraries; cards add no second gap. */
html.plan-usability-ui.plan-refined-product body #main :is(.view-goals,.view-production) .pp-visual-grid{gap:12px!important}
html.plan-usability-ui.plan-refined-product body #main :is(.view-goals,.view-production) .pp-visual-grid>.pp-visual-card{margin:0!important}
/* The detail cover includes a description below its photo: centre on the photo. */
html.plan-usability-ui.plan-refined-product #main .pp-visual-detail-cover button.pp-project-photo-timer,
html.plan-usability-ui.plan-refined-product #main .pp-visual-detail-cover button.pp-project-photo-timer:is(:hover,:active,:focus,:focus-visible){top:calc(var(--pp-cover-height,230px)/2)!important;left:50%!important;transform:translate(-50%,-50%)!important}
/* Shared mobile shell: safe area is padding on the viewport nav exactly once. */
@media(max-width:760px){
 html.pp-shared-app-shell,html.pp-shared-app-shell body{height:100%;min-height:0!important;overflow:hidden!important;overscroll-behavior:auto!important}
 html.pp-shared-app-shell body{position:static!important;inset:auto!important;transform:none!important;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
 html.pp-shared-app-shell body #main{box-sizing:border-box!important;height:100dvh!important;max-height:100dvh!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:auto!important;touch-action:pan-y;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--pp-bottom-nav-height,84px) + 20px)!important}
 html.pp-shared-app-shell body #main>.view{min-height:0!important;height:auto!important;max-height:none!important;overflow:visible!important}
 html.pp-shared-app-shell body>.m-tabs{position:fixed!important;top:auto!important;bottom:0!important;left:0!important;right:0!important;width:100%!important;box-sizing:border-box!important;margin:0!important;padding:8px 8px calc(10px + env(safe-area-inset-bottom,0px))!important;transform:none!important;filter:none!important;z-index:150!important}
 html.pp-shared-app-shell.pt-glass body>.m-tabs{border-radius:24px 24px 0 0!important;backdrop-filter:blur(var(--glass-blur,20px))!important;-webkit-backdrop-filter:blur(var(--glass-blur,20px))!important}
 html.pp-shared-app-shell body>.m-fab{position:fixed!important;bottom:calc(var(--pp-bottom-nav-height,84px) + 16px)!important;z-index:151!important}
 html.pp-shared-app-shell body #main :is(.view-production,.view-goals,.view-money)>.pt-sticky,html.pp-shared-app-shell body #main .view-more>.pp-page-title{position:sticky!important;top:0!important;z-index:60!important;transform:none!important;box-shadow:none!important;background:var(--bg)!important}
 html.pp-shared-app-shell.pt-glass body #main :is(.view-production,.view-goals,.view-money)>.pt-sticky,html.pp-shared-app-shell.pt-glass body #main .view-more>.pp-page-title{background:color-mix(in srgb,var(--bg) var(--glass-surface-percent,72%),transparent)!important;backdrop-filter:blur(var(--glass-blur,20px))!important;-webkit-backdrop-filter:blur(var(--glass-blur,20px))!important}
 html.pp-shared-app-shell.pp-activities-page body #main.pp-activities-main{display:block!important;overflow-y:auto!important}
 html.pp-shared-app-shell.pp-activities-page body #main.pp-activities-main>.view{display:block!important;overflow:visible!important}
 html.pp-shared-app-shell body #main.pp-activities-main .pp-activities-content{overflow:visible!important;overscroll-behavior:auto!important;padding-bottom:0!important}
}

/* List is a compact single column; cards keep the responsive gallery. */
html.plan-usability-ui .view .pp-visual-grid.is-list{grid-template-columns:minmax(0,1fr)!important}
html.plan-usability-ui .view .pp-visual-grid.is-list .pp-visual-card{grid-template-columns:minmax(0,1fr) 100px!important;grid-template-areas:"heading cover" "workflow cover" "quick cover" "status status";min-height:120px!important;padding:10px!important;gap:5px 10px!important}
html.plan-usability-ui .view .pp-visual-grid.is-list .pp-visual-cover{max-height:110px}
html.plan-usability-ui .view .pp-visual-grid.is-list .pp-visual-tiles i{width:12px;height:12px;flex-basis:12px}
html.plan-usability-ui .view .pp-visual-grid.is-list .pp-visual-heading h2{font-size:14px!important}

.pp-linked-step-work{grid-column:2/-1;display:block;border:0;background:none;color:var(--primary);font:inherit;font-size:11px;padding:3px 0;text-align:start;cursor:pointer;box-shadow:none}.pp-work-detail-body .btn{justify-content:space-between;gap:12px}

/* Timer occupies its own fixed row between shared chrome and page controls. */
html.pp-fixed-chrome .main{padding-top:calc(var(--pp-chrome-height,64px) + var(--pp-active-timer-height,0px) + var(--pp-daily-fixed-height,0px))!important}
html.pp-fixed-chrome body>.plan-global-timer{position:fixed!important;top:var(--pp-chrome-height,64px)!important;left:var(--pp-content-left,16px)!important;width:var(--pp-content-width,calc(100% - 32px))!important;right:auto!important;box-sizing:border-box;margin:0!important;z-index:65!important;transform:none!important}
html.pp-fixed-chrome .pp-fixed-daily-host{top:calc(var(--pp-chrome-height,64px) + var(--pp-active-timer-height,0px))!important}
html.pp-fixed-chrome :is(.view-production,.view-goals,.view-money)>.pt-sticky{top:calc(var(--pp-chrome-height,64px) + var(--pp-active-timer-height,0px))!important}
@media(max-width:760px){
 html.pp-shared-app-shell.pp-fixed-chrome body #main{margin-top:calc(var(--pp-chrome-height,64px) + var(--pp-active-timer-height,0px))!important;height:calc(100dvh - var(--pp-chrome-height,64px) - var(--pp-active-timer-height,0px))!important;max-height:calc(100dvh - var(--pp-chrome-height,64px) - var(--pp-active-timer-height,0px))!important;padding-top:var(--pp-daily-fixed-height,0px)!important}
 html.pp-shared-app-shell.pp-fixed-chrome body #main :is(.view-production,.view-goals,.view-money)>.pt-sticky{top:0!important}
}

/* Dialogs must receive taps above the shared navigation and floating controls. */
html body .modal-backdrop,html body .modal-backdrop.plan-reference-backdrop{z-index:200!important}

/* iPhone viewport chrome: no inherited body inset, one safe area per edge. */
@media(max-width:760px){
 html.pp-shared-app-shell body{margin:0!important;padding:0!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important}
 html.pp-fixed-chrome body>.pp-fixed-header{height:auto!important;min-height:calc(64px + env(safe-area-inset-top,0px))!important;padding:calc(10px + env(safe-area-inset-top,0px)) 12px 10px!important;overflow:visible!important}
 html.pp-shared-app-shell body>.m-tabs{height:auto!important;min-height:0!important;max-height:none!important;align-items:flex-start!important;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px))!important}
 html.pp-shared-app-shell body>.m-tabs>button{flex:1 1 0!important;min-width:0!important;min-height:50px!important;height:50px!important;margin:0!important;box-sizing:border-box!important;justify-content:center!important;padding:3px 0!important}
}

/* Restore the original floating mobile tab capsule; safe area belongs below it. */
@media(max-width:760px){
 html.pp-shared-app-shell body>.m-tabs,
 html.pp-shared-app-shell.pt-glass body>.m-tabs{left:10px!important;right:10px!important;width:calc(100% - 20px)!important;bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;padding:6px 4px!important;border-radius:999px!important;overflow:hidden!important}
 html.pp-shared-app-shell body #main{padding-bottom:calc(var(--pp-bottom-nav-height,64px) + env(safe-area-inset-bottom,0px) + 30px)!important}
 html.pp-shared-app-shell body>.m-fab{bottom:calc(var(--pp-bottom-nav-height,64px) + env(safe-area-inset-bottom,0px) + 26px)!important}
}

/* Anchor the installed iPhone shell from its top edge. Safari may shorten the
   bottom-fixed containing viewport independently of the standalone canvas. */
@media(max-width:760px){
 html.pp-shared-app-shell{--pp-shell-height:100dvh;--pp-nav-gap:calc(10px + env(safe-area-inset-bottom,0px))}
 html.pp-shared-app-shell body{height:var(--pp-shell-height)!important;background-attachment:fixed!important}
 html.pp-shared-app-shell body #main{height:var(--pp-shell-height)!important;max-height:var(--pp-shell-height)!important;background:transparent!important}
 html.pp-shared-app-shell.pp-fixed-chrome body #main{height:calc(var(--pp-shell-height) - var(--pp-chrome-height,64px) - var(--pp-active-timer-height,0px))!important;max-height:calc(var(--pp-shell-height) - var(--pp-chrome-height,64px) - var(--pp-active-timer-height,0px))!important}
 html.pp-shared-app-shell body>.m-tabs,
 html.pp-shared-app-shell.pt-glass body>.m-tabs{top:calc(var(--pp-shell-height) - var(--pp-bottom-nav-height,64px) - var(--pp-nav-gap))!important;bottom:auto!important}
 html.pp-shared-app-shell body>.m-fab{top:calc(var(--pp-shell-height) - var(--pp-bottom-nav-height,64px) - var(--pp-nav-gap) - 68px)!important;bottom:auto!important}
}
@media(max-width:760px) and (display-mode:standalone){html.pp-shared-app-shell{--pp-shell-height:100lvh}}

/* Shrink the editing surface to the part of the screen the keyboard leaves visible. */
.pp-keyboard-open #modalRoot>div{max-height:var(--pp-edit-height)!important;top:var(--pp-edit-top)!important;bottom:auto!important;height:var(--pp-edit-height)!important;}
html.pp-keyboard-open body .modal-backdrop{top:var(--pp-edit-top)!important;bottom:auto!important;height:var(--pp-edit-height)!important;}
html.pp-keyboard-open body .modal-backdrop .modal,.pp-keyboard-open #modalRoot .modal{max-height:calc(var(--pp-edit-height) - 16px)!important;min-height:0!important;}
.pp-keyboard-open #modalRoot .modal-body{min-height:0;overflow-y:auto!important;overscroll-behavior-y:contain;}
.pp-keyboard-open input,.pp-keyboard-open textarea,.pp-keyboard-open [contenteditable=true]{scroll-margin-block:20px;}
/* Bottom bars never cover the field being typed in. */
html.pp-keyboard-open body>.m-tabs,html.pp-keyboard-open body>.m-fab{visibility:hidden!important;}
/* Room to lift the last fields above the keyboard, added after the content. */
.pp-kb-room::after{content:"";display:block;flex:none;height:var(--pp-kb-room,0px);pointer-events:none}

/* Edit exports: drop zone, thin progress line, public links. */
.pp-export-box{margin:12px 0;display:grid;gap:8px}
.pp-export-drop{display:flex;align-items:center;gap:10px;padding:14px;border:1.5px dashed color-mix(in srgb,var(--primary) 45%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--primary) 5%,var(--card));cursor:pointer;color:var(--ink)}
.pp-export-drop.is-over{border-style:solid;background:color-mix(in srgb,var(--primary) 12%,var(--card))}
.pp-export-drop>svg{width:22px;height:22px;flex:none;color:var(--primary)}
.pp-export-drop span{display:grid;gap:2px}.pp-export-drop b{font-size:13px}.pp-export-drop small{font-size:11px;color:var(--muted)}
.pp-export-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.pp-export-list:empty{display:none}
.pp-export-item,.pp-export-job{display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.pp-export-item .grow,.pp-export-job .grow{min-width:0;display:grid;gap:3px}
.pp-export-item b,.pp-export-job b{font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pp-export-item small,.pp-export-job small{font-size:11px;color:var(--muted)}
.pp-export-job.is-error small{color:var(--red,#c0392b)}
.pp-export-bar{display:block;height:3px;border-radius:2px;background:color-mix(in srgb,var(--primary) 15%,transparent);overflow:hidden}
.pp-export-bar>i{display:block;height:100%;background:var(--primary);transition:width .3s ease}
.pp-export-item .icon-btn,.pp-export-job .icon-btn{width:32px;height:32px;min-width:32px;padding:6px;border:0;background:transparent;color:var(--muted);display:grid;place-items:center}
.pp-export-item .icon-btn svg{width:18px;height:18px}
.pp-export-slot:empty{display:none}
.pp-export-slot .pp-export-box{margin-bottom:14px}
.pp-chat-attach{flex:none;cursor:pointer;align-self:flex-end}
.pt-chat-form.is-sending{position:relative;opacity:.85}
.pt-chat-form.is-sending::after{content:"";position:absolute;inset-inline-start:0;bottom:0;height:2px;width:var(--pp-send,8%);background:var(--accent,#c9a24a);transition:width .3s}
.pp-chat-img img{display:block;max-width:min(260px,100%);border-radius:10px;margin:4px 0}
.pt-msg audio{display:block;width:min(260px,100%);margin:4px 0}
.pp-chat-file{display:inline-block;font-size:.9em;text-decoration:underline;word-break:break-word}
.pt-chat-form:has(.pp-chat-attach){grid-template-columns:auto minmax(0,1fr) auto}
.pp-chat-attach{min-height:48px;display:grid;place-items:center}
.pp-export-del{color:var(--danger,#e5484d)}
.pp-shot-board-row{display:grid;gap:8px}.pp-shot-board img{display:block;width:100%;max-width:420px;border-radius:10px;border:1px solid var(--line,rgba(127,127,127,.25));background:#fff}
.btn.ai,.chat-input .btn.ai{background-color:#d9c391;color:#14202c}
.btn.ai:disabled{opacity:.6;color:#14202c}
[data-surface-mode="liquidGlass"] .chat-input .btn.ai,[data-surface-mode="liquidGlass"] .assist-modal .btn.ai{background:#d9c391!important;color:#14202c!important;border-color:transparent!important}
[data-surface-mode="liquidGlass"] .chat-input .btn.ai svg{color:#14202c!important}
.pp-ai-gear{margin-inline-start:auto}
.pp-ai-sheet .pp-ai-api[hidden]{display:none}
.pp-sp-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:8px 0}
.pp-sp-bar small{color:var(--muted,#7a8591)}
.pp-sp-target{min-height:38px;border-radius:10px;padding:0 10px}
.pp-sp-view{max-height:70vh;overflow:auto;border:1px solid var(--line,rgba(127,127,127,.22));border-radius:14px;padding:18px 16px;margin:10px 0;background:var(--surface,rgba(255,255,255,.03))}
.pp-sp-idea textarea{width:100%;min-height:110px;line-height:1.9}
.pp-sp-stale,.pp-sp-error{display:flex;flex-wrap:wrap;gap:8px;align-items:center;border-radius:12px;padding:10px 12px;margin:8px 0;background:rgba(229,72,77,.1);color:var(--danger,#e5484d)}
.pp-sp-time{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;padding:10px 12px;border-radius:12px;margin:0 0 10px;background:rgba(46,160,67,.1)}
.pp-sp-time.off{background:rgba(229,138,0,.12)}
.sp-doc{direction:rtl;text-align:right;line-height:1.9}.sp-title{text-align:center;font-size:1.35em;margin:0 0 4px}.sp-meta{text-align:center;opacity:.75;margin-bottom:16px;font-size:.92em}
.sp-scene{font-size:1em;font-weight:800;margin:20px 0 6px;padding-bottom:4px;border-bottom:1px solid var(--line,rgba(127,127,127,.25))}.sp-no{opacity:.6}
.sp-action{margin:6px 0}.sp-dial{margin:10px 14%}.sp-char{text-align:center;font-weight:800;margin:0}.sp-paren{text-align:center;opacity:.7;margin:0;font-size:.9em}.sp-line{text-align:center;margin:2px 0 0}.sp-trans{text-align:left;font-weight:700;margin:12px 0}
@media (max-width:600px){.sp-dial{margin:10px 6%}}
.pp-sp .card-head{flex-wrap:wrap;gap:8px}.pp-sp .card-head .btn-row{flex-basis:100%;justify-content:flex-start;flex-wrap:wrap}
.pp-sp-progress{flex-basis:100%;display:grid;gap:6px;margin-top:8px}.pp-sp-progress i{display:block;height:6px;border-radius:6px;background:rgba(127,127,127,.2);overflow:hidden}.pp-sp-progress b{display:block;height:100%;background:var(--accent,#c9a24a);transition:width .4s}.pp-sp-progress small{opacity:.8}.pp-sp .ai-box{flex-wrap:wrap}

/* Read-only screenplay for crew members. */
.pp-script-read{display:grid;gap:10px}
.pp-script-logline{margin:0;font-size:13px;line-height:1.9}
.pp-script-text{white-space:pre-wrap;line-height:2;font-size:14px;max-height:70vh;overflow-y:auto;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--card)}

.pp-resolve-plan-row{display:grid;grid-template-columns:28px minmax(0,1fr) 72px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);min-width:0}
.pp-resolve-plan-row>div,.pp-resolve-plan-row label{min-width:0}.pp-resolve-plan-row small{display:block;color:var(--muted);font-size:.72rem}.pp-resolve-plan-row input{width:100%;min-width:0;text-align:center;padding:7px 4px}.pp-resolve-plan-row .pt-tick{width:26px;height:26px}.pp-resolve-plan-row .btn{max-width:100%;white-space:normal;text-align:start;padding:3px 0}.pp-resolve-plan form>.btn{margin-top:10px}

.pp-edit-mode{display:flex;gap:6px;margin-bottom:10px}.pp-edit-mode [aria-pressed="true"]{color:var(--accent);background:var(--surface2)}.pp-edit-connection{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;width:100%;font-size:.8rem}.pp-edit-connection b{white-space:nowrap}.pp-editing>.pp-edit-connection{padding:8px 0 12px}

/* Owner-only AI usage tab */
.pro-admin .aa{display:grid;gap:12px}
.pro-admin .aa-card{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:color-mix(in srgb,var(--card) 92%,var(--ink) 8%)}
.pro-admin .aa-card h3{margin:0 0 8px;font-size:15px}
.pro-admin .aa-card p{margin:6px 0;line-height:1.7}
.pro-admin .aa-meter{height:10px;border-radius:6px;background:color-mix(in srgb,var(--ink) 12%,transparent);overflow:hidden}
.pro-admin .aa-meter i{display:block;height:100%;background:#2fae6b;border-radius:6px}
.pro-admin .aa-meter.warn i{background:#e0a020}.pro-admin .aa-meter.over i{background:#d9443a}
.pro-admin .aa-note{font-size:12px;opacity:.75}.pro-admin .aa-note.warn{color:#d9443a;opacity:1}
.pro-admin .aa-days{display:flex;gap:6px;align-items:flex-end;min-height:96px}
.pro-admin .aa-day{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px}
.pro-admin .aa-day i{width:70%;max-width:28px;background:var(--accent,#3b7ddd);border-radius:4px 4px 0 0}
.pro-admin .aa-day span{opacity:.7;direction:ltr}
.pro-admin .aa-lims{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:6px 0}
.pro-admin .aa-lim,.pro-admin .aa-cap{display:flex;flex-direction:column;gap:4px;font-size:12px}
.pro-admin .aa-lim input,.pro-admin .aa-cap input{font:inherit;font-size:16px;padding:7px 9px;border-radius:9px;border:1px solid var(--line);background:var(--card);color:var(--ink);width:100%;box-sizing:border-box}
.pro-admin .aa-cap{margin-top:6px}
.pro-admin .aa-user{flex-wrap:wrap;gap:8px;align-items:center}
.pro-admin .aa-user.blocked{opacity:.7}
.pro-admin .aa-who{display:flex;flex-direction:column;gap:2px;flex:1 1 220px;min-width:0}
.pro-admin .aa-who b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pro-admin .aa-user .aa-edit{flex-basis:100%}
.pro-admin .aa-user .aa-edit[hidden]{display:none}
.pro-admin .pa-tag.red{background:#d9443a22;color:#d9443a}
/* Section-by-section team access */
.pt-access{display:grid;gap:8px;margin:8px 0}
.pt-access-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.pt-access fieldset{border:1px solid var(--line);border-radius:12px;padding:6px 10px 8px;margin:0;display:flex;flex-wrap:wrap;gap:4px 14px}
.pt-access legend{font-size:12px;opacity:.75;padding:0 4px}
.pt-access label{display:flex;align-items:center;gap:6px;font-size:13px;min-height:32px}
.pt-access label.extra span::after{content:" · اضافه";font-size:11px;opacity:.55}
.pt-access-note{font-size:11.5px;opacity:.7;line-height:1.6}

/* Free key wizard */
.pp-key-wizard{display:grid;gap:12px}
.pp-kw-lead{margin:0;line-height:1.8}
.pp-kw-card{display:grid;gap:8px;border:1px solid var(--line);border-radius:14px;padding:12px}
.pp-kw-card.best{border-color:color-mix(in srgb,var(--accent,#b48a3c) 60%,var(--line))}
.pp-kw-card small,.pp-kw-manual small,.pp-kw-note{line-height:1.7;opacity:.8}
.pp-kw-row{display:flex;gap:8px;flex-wrap:wrap}.pp-kw-row .btn{flex:1 1 140px}
.pp-kw-manual{display:grid;gap:6px}
.pp-kw-manual input{font:inherit;font-size:16px;padding:10px;border-radius:10px;border:1px solid var(--line);background:var(--card);color:var(--ink);width:100%;box-sizing:border-box}
.pp-kw-out{margin:0;min-height:1em;line-height:1.8}.pp-kw-out.ok{color:#2f9e5b;font-weight:600}.pp-kw-out.warn{color:#d9443a}
.pp-kw-entry{width:100%;margin-bottom:10px;justify-content:center}
/* Which service does what, and the save test */
.pp-ai-map{display:flex;flex-wrap:wrap;gap:4px 14px;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--accent,#b48a3c) 10%,transparent);margin:0 0 10px;font-size:13px;line-height:1.8}
.pp-ai-map b{flex-basis:100%}.pp-ai-map i{font-style:normal;font-weight:600}
.pp-ai-test{margin:8px 0;line-height:1.9}.pp-ai-test.ok{color:#2f9e5b;font-weight:600}.pp-ai-test.bad{color:#d9443a}
.pp-ai-test .btn{margin:6px 0 0 6px}
a.btn[data-kw-open]{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.pp-goal-photo-row{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}
/* AI buttons follow the theme's main button */
.btn.ai:not(#pp-x){background:var(--pp-ai-bg,var(--primary))!important;color:var(--pp-ai-fg,#fff)!important;border-color:var(--pp-ai-bg,var(--primary))!important;background-image:none!important}
.btn.ai:not(#pp-x) svg,.btn.ai:not(#pp-x) .ic{color:inherit!important;stroke:currentColor}
.btn.ai:disabled{opacity:.55}
/* Goal photo: an icon on the goal card and on the goal page, like projects */
.pp-goal-photo-btn{position:absolute;z-index:3;inset-inline-end:10px;bottom:10px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;padding:0;background:rgba(0,0,0,.45);color:#fff;border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(6px)}
.pp-goal-photo-btn svg{width:18px;height:18px;color:#fff}
.pp-visual-no-cover .pp-goal-photo-btn,.pp-goal-photo-empty .pp-goal-photo-btn{position:static;background:var(--primary);color:var(--pp-ai-fg,#fff);border:0}
.pp-visual-no-cover>.pp-goal-photo-btn{position:absolute;top:10px;bottom:auto;inset-inline-start:auto;inset-inline-end:12px;width:30px;height:30px}
.pp-goal-photo-empty{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;min-height:110px;margin:0 0 12px;border:1.5px dashed var(--line);border-radius:16px;color:var(--muted,inherit)}
.pp-goal-photo-empty .pp-goal-photo-btn{width:44px;height:44px}
/* Running AI jobs: a live counter on every page */
#pp-tasks{position:fixed;z-index:9000;inset-inline:0;bottom:calc(84px + env(safe-area-inset-bottom));display:grid;justify-content:center;gap:6px;pointer-events:none}
#pp-tasks[hidden]{display:none}
.pp-task{pointer-events:auto;display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:999px;background:var(--card,#1d2128);color:var(--ink,#eee);border:1px solid var(--line,rgba(255,255,255,.15));box-shadow:0 8px 24px rgba(0,0,0,.25);font-size:13px;max-width:min(92vw,560px)}
.pp-task small{opacity:.75}.pp-task .pp-task-clock{font-variant-numeric:tabular-nums;font-weight:700;color:var(--pp-ai-bg,var(--primary))}
.pp-task.done{border-color:#2f9e5b}.pp-task-ok{color:#2f9e5b;font-weight:800}
.pp-sp-actions{flex-wrap:wrap}.pp-sp-buttons{display:flex;gap:8px;flex-wrap:wrap}
.pp-sp-del{color:#d9443a}
/* Brief inside pre-production: the part already carries the title */
.pt-part .pp-project-brief .plan-section-head h2{display:none}
.pt-part .pp-project-brief .plan-section-head{justify-content:flex-end}

/* Film workflow in pre-production: one film length, four parts (source → screenplay → shots → storyboard). */
.pp-film-dur{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:10px 14px;margin:0 0 12px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.pp-film-dur label{display:flex;align-items:center;gap:10px;font-weight:700;margin:0;white-space:nowrap;flex:none}
.pp-film-dur label span{display:inline-flex;align-items:center;gap:6px}
.pp-film-dur input[data-pp-film-dur]{width:96px;max-width:96px;flex:none;text-align:center;font-weight:800;font-size:16px;padding:6px 8px;border-radius:10px}
.pp-film-dur small{color:var(--muted);line-height:1.8;flex:1 1 220px}
.pp-src{display:grid;gap:12px}
.pp-src .card{margin:0}
.pp-src-label{display:block;font-weight:700;margin:4px 0 6px}
.pp-src textarea[data-pp-sp-idea]{width:100%;height:auto!important;min-height:120px!important;line-height:1.9;resize:vertical}
.pp-src-tools{justify-content:flex-start}
.pp-src-list{display:grid;gap:8px;margin:10px 0}
.pp-src-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px}
.pp-src-item>i{display:inline-flex;margin-top:3px;color:var(--muted)}
.pp-src-item small{display:block;color:var(--muted)}
.pp-src-item p{margin:4px 0 0;font-size:13px;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}
.pp-src-next,.pp-flow-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px}
.pp-flow-head{margin:0 0 12px}
.pp-flow-head p{margin:4px 0 0}
.pp-src-ideas .card{margin:0}
.pp-refs .hint{margin:0 0 10px}
.pp-ref-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.pp-ref{display:grid;grid-template-columns:72px 1fr auto;gap:10px;align-items:start;padding:8px;border:1px solid var(--line);border-radius:12px}
.pp-ref-img{width:72px;height:72px;border-radius:10px;background:var(--line) center/cover no-repeat;display:grid;place-items:center;color:var(--muted)}
.pp-ref-text{min-width:0}.pp-ref-text small{color:var(--muted)}.pp-ref-text b{display:block}
.pp-ref-text p{margin:2px 0 0;font-size:12.5px;line-height:1.7;color:var(--muted);overflow-wrap:anywhere}
.pp-ref-act{display:flex;flex-direction:column;gap:4px}
.pp-sp-empty{display:flex;align-items:center;gap:12px;padding:16px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);margin:8px 0}
.pp-sp-empty p{margin:0;line-height:1.9}
.sp-sc{position:relative}
.sp-tools{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end;margin:14px 0 -8px;opacity:.75}
.sp-sc:hover .sp-tools,.sp-tools:focus-within{opacity:1}
.btn.xs{padding:3px 9px;font-size:12px;min-height:26px;border-radius:8px}
.btn.xs.danger{color:var(--danger,#d9443a)}
.pp-sp-addscene{display:flex;justify-content:center;margin:10px 0}
.pp-sp-vers{display:grid;gap:8px}
.pp-sp-vers>div{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:12px}
.pp-sp-vers small{grid-column:1;color:var(--muted)}
.pp-sp-vers button{grid-row:1/span 2;grid-column:2}
.sc-dur{display:block;color:var(--muted)}
.sh-dur{flex:none;font-size:12px;font-weight:700;padding:2px 7px;border-radius:999px;background:rgba(127,127,127,.14)}
.sh-tools{display:inline-flex;gap:2px;flex:none}
.icon-btn.xs{width:26px;height:26px;min-width:26px;font-size:13px}
.icon-btn.xs svg{width:14px;height:14px}
.pp-gate{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;margin:0 0 12px;border-radius:12px;background:rgba(229,138,0,.12)}
.pp-gate span{flex:1 1 220px;line-height:1.8}
.pp-board-prog{display:grid;gap:4px;margin:0 0 12px}
.pp-board-prog i{display:block;height:6px;border-radius:99px;background:rgba(127,127,127,.18);overflow:hidden}
.pp-board-prog b{display:block;height:100%;background:var(--primary);transition:width .4s}
.pp-board-prog small{color:var(--muted)}
.sb-img{position:relative}
.sb-state{position:absolute;inset-inline-start:8px;top:8px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;background:rgba(0,0,0,.62);color:#fff;z-index:2}
.sb-state.queued{background:rgba(0,0,0,.42)}
.sb-state.stale{background:rgba(229,138,0,.92);color:#1b1300}
.sb-state .spinner{width:12px;height:12px}
.sb-redo{position:absolute;inset-inline-end:8px;bottom:8px;width:30px;height:30px;border-radius:50%;border:0;display:grid;place-items:center;background:rgba(0,0,0,.55);color:#fff;z-index:2;cursor:pointer;opacity:.85}
.sb-redo:hover,.sb-redo:focus-visible{opacity:1}
.sb-redo svg{width:15px;height:15px}
.sb-img.empty .sb-redo{display:none}
.sb-frame.pp-just .sb-img{animation:ppFrameIn .9s ease}
@keyframes ppFrameIn{from{opacity:.25;transform:scale(.97)}to{opacity:1;transform:none}}
.pp-manual-body{display:grid;gap:10px}
.pp-manual-body textarea{width:100%;line-height:1.8;font-size:13.5px}
.pp-manual-q{background:rgba(127,127,127,.08)}
.pp-manual-err{margin:0;color:var(--danger,#d9443a);min-height:1em}
@media (max-width:640px){
 .pp-film-dur{padding:10px 12px}
 .pp-ref{grid-template-columns:60px 1fr auto}.pp-ref-img{width:60px;height:60px}
 .sh-tools .icon-btn.xs{width:30px;height:30px}
 .pp-flow-head .pp-sp-buttons,.pp-src-next .btn{width:100%}
}
/* editable workflow: running / stopped states, cancel, storyboard management */
.pp-run{display:inline-flex;align-items:center;gap:8px;font-weight:700}
.pp-run .spinner{width:14px;height:14px}
.btn.pp-cancel{border-color:var(--danger,#d9443a);color:var(--danger,#d9443a)}
.pp-stopped{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;margin:0 0 12px;border-radius:12px;background:rgba(127,127,127,.12)}
.pp-stopped>span{flex:1 1 240px;line-height:1.8}
.btn.sm.danger,.btn.ghost.danger{color:var(--danger,#d9443a)}
.pp-board-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px}
.pp-board-head:empty{display:none}
.pp-more{position:relative}
.pp-more>summary{list-style:none;cursor:pointer;min-width:36px;justify-content:center}
.pp-more>summary::-webkit-details-marker{display:none}
.pp-more-menu{position:absolute;z-index:30;inset-inline-start:0;top:calc(100% + 6px);display:grid;gap:4px;min-width:210px;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--card);box-shadow:0 10px 30px rgba(0,0,0,.18)}
.pp-more-menu .btn{justify-content:flex-start;width:100%}
.sb-pick{position:absolute;inset-inline-end:8px;top:8px;width:26px;height:26px;border-radius:8px;border:2px solid #fff;background:rgba(0,0,0,.35);color:transparent;display:grid;place-items:center;z-index:3;cursor:pointer}
.sb-pick svg{width:14px;height:14px}
.sb-frame.pp-picked .sb-pick{background:var(--primary);color:#fff;border-color:var(--primary)}
.sb-frame.pp-picked .sb-img{outline:3px solid var(--primary);outline-offset:-3px}
.pp-task-stop{color:var(--muted);font-size:11px}
.pp-task-cancel{pointer-events:auto;border:1px solid currentColor;background:transparent;color:var(--danger,#d9443a);border-radius:999px;padding:3px 10px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
@media (max-width:640px){.pp-board-head .btn{flex:1 1 auto}.pp-more-menu{inset-inline-start:auto;inset-inline-end:0}}
/* editing: one film length and what pre-production prepared for DaVinci */
.pp-film-edit{display:grid;gap:8px;padding:12px 14px;margin:10px 0;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.pp-fe-dur{display:flex;align-items:center;gap:10px;font-weight:700;margin:0}
.pp-fe-dur span{display:inline-flex;align-items:center;gap:6px}
.pp-fe-dur input[data-pp-film-dur]{width:96px;max-width:96px;flex:none;text-align:center;font-weight:800;font-size:16px;padding:6px 8px;border-radius:10px}
.pp-fe-data{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13.5px;color:var(--muted)}
.pp-fe-data .ok{color:var(--ink)}
.pp-fe-data small{color:var(--muted)}
.pp-fe-sync{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:rgba(229,138,0,.12)}
.pp-fe-note{color:var(--muted);line-height:1.8}
.pp-fe-changes{margin:0 0 10px;padding-inline-start:18px;line-height:2}
.pp-fe-changes .deleted{color:var(--danger,#d9443a)}
.pp-fe-install{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;border-radius:12px;border:1px dashed var(--line);background:rgba(127,127,127,.06)}
.pp-fe-install>svg{flex:none;color:var(--primary)}
.pp-fe-install>span{flex:1 1 240px;line-height:1.8}
.pp-fe-install small{display:block;color:var(--muted)}
/* production: filming-day shots, shooting mode, wrap */
.pp-day-shots{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px;flex:1 0 100%;width:100%;margin-top:4px;padding-top:8px;border-top:1px dashed var(--line)}
section.shoot-day:has(> .pp-day-shots){height:auto!important;flex-wrap:wrap!important}
.pp-ds-sum{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13.5px}
.pp-ds-act{display:flex;flex-wrap:wrap;gap:6px}
.pp-assign fieldset{border:1px solid var(--line);border-radius:12px;padding:6px 10px;margin:0 0 8px}
.pp-assign legend{padding:0 6px}
.pp-as-row{display:flex;align-items:center;gap:8px;padding:5px 2px;border-bottom:1px solid var(--line)}
.pp-as-row:last-child{border-bottom:0}
.pp-as-code{font-weight:700;font-size:12.5px;min-width:92px;direction:ltr;text-align:left}
.pp-order-list{display:grid;gap:4px;margin:8px 0}
.pp-order-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--line);border-radius:10px}
.pp-shoot-mode{position:fixed;inset:0;z-index:195;display:flex;flex-direction:column;background:#111316;color:#f3f4f6}
.pp-sm-head{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:10px;padding:calc(env(safe-area-inset-top) + 8px) 12px 8px;border-bottom:1px solid rgba(255,255,255,.08)}
.pp-sm-head small{display:block;color:rgba(255,255,255,.65)}
.pp-sm-x{width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.1);color:#fff;font-size:16px}
.pp-sm-wrap{border:1px solid rgba(255,255,255,.4);background:transparent;color:#fff;border-radius:10px;padding:6px 12px;font:inherit}
.pp-sm-body{flex:1;overflow:auto;padding:12px;display:grid;gap:12px;align-content:start;max-width:980px;width:100%;margin:0 auto}
.pp-sm-board{position:relative;aspect-ratio:16/9;width:min(100%,calc(46vh * 16 / 9));justify-self:center;border-radius:14px;background:#000 center/contain no-repeat;display:grid;place-items:center;color:rgba(255,255,255,.55)}
.pp-sm-code{position:absolute;inset-inline-start:10px;top:10px;background:rgba(0,0,0,.65);padding:4px 10px;border-radius:8px;font-weight:800;letter-spacing:.5px}
.pp-sm-state{position:absolute;inset-inline-end:10px;top:10px;padding:4px 10px;border-radius:8px;font-weight:800}
.pp-sm-state.shot{background:#1f9d55}.pp-sm-state.retake{background:#d9443a}
.pp-sm-info h2{margin:0;font-size:17px}.pp-sm-tech{margin:4px 0;color:rgba(255,255,255,.7)}.pp-sm-desc{margin:4px 0;font-size:16px;line-height:1.8}
.pp-sm-audio,.pp-sm-prevcont{margin:4px 0;color:rgba(255,255,255,.8);display:flex;gap:6px;align-items:flex-start}
.pp-sm-prevcont{color:#f5c26b}
.pp-sm-takes{display:grid;gap:8px}
.pp-sm-takes-head{display:flex;align-items:center;justify-content:space-between}
.pp-sm-add{min-height:48px;padding:0 22px;font-size:16px}
.pp-sm-take{display:grid;grid-template-columns:40px 48px 1fr;gap:6px 10px;align-items:center;padding:10px;border-radius:12px;background:rgba(255,255,255,.06)}
.pp-sm-take.best{background:rgba(201,162,39,.18);outline:1px solid rgba(201,162,39,.6)}
.pp-sm-star{width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.08);color:#f5c518;font-size:20px}
.pp-sm-tags{display:flex;flex-wrap:wrap;gap:4px}
.pp-sm-tag{border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;border-radius:999px;padding:4px 10px;font:inherit;font-size:13px}
.pp-sm-tag.on{background:#fff;color:#111}
.pp-sm-clip,.pp-sm-note{grid-column:2/-1;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:8px;padding:8px 10px;font:inherit}
.pp-sm-del{grid-column:1;grid-row:3;justify-self:center;border:0;background:transparent;color:rgba(255,255,255,.5)}
.pp-sm-cont{display:grid;gap:4px}.pp-sm-cont textarea{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:10px;padding:8px 10px;font:inherit}
.pp-sm-foot{display:grid;grid-template-columns:auto 1fr 1fr auto;gap:8px;padding:10px 12px calc(env(safe-area-inset-bottom) + 10px);border-top:1px solid rgba(255,255,255,.08)}
.pp-sm-nav{border:0;background:rgba(255,255,255,.1);color:#fff;border-radius:12px;padding:0 14px;min-height:52px;font:inherit}
.pp-sm-nav:disabled{opacity:.35}
.pp-sm-btn{min-height:52px;border-radius:12px;font:inherit;font-weight:800;font-size:16px;border:2px solid currentColor;background:transparent}
.pp-sm-btn.done{color:#34d07a}.pp-sm-btn.retake{color:#ff6b61}
.pp-sm-btn.on.done{background:#1f9d55;color:#fff;border-color:#1f9d55}.pp-sm-btn.on.retake{background:#d9443a;color:#fff;border-color:#d9443a}
.pp-wrap-sum{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:4px 0 12px}
.pp-wrap-sum>div{display:grid;justify-items:center;padding:10px 4px;border:1px solid var(--line);border-radius:12px}
.pp-wrap-sum b{font-size:22px}.pp-wrap-sum .ok b{color:#1f9d55}.pp-wrap-sum .bad b{color:#d9443a}
@media (max-width:640px){.pp-sm-foot{grid-template-columns:1fr 1fr}.pp-sm-nav{order:3}.pp-sm-take{grid-template-columns:40px 40px 1fr}}

#ppShootMode .pp-sm-code,#ppShootMode .pp-sm-tno,#ppShootMode .pp-sm-clip,.pp-as-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-variant-numeric:tabular-nums}
#ppShootMode input.pp-sm-clip,#ppShootMode input.pp-sm-note,#ppShootMode .pp-sm-cont textarea{background:rgba(255,255,255,.08)!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:none!important;min-height:42px}
#ppShootMode input::placeholder,#ppShootMode textarea::placeholder{color:rgba(255,255,255,.4)}
#ppShootMode .pp-sm-cont span{color:rgba(255,255,255,.7)}
.pp-sm-btn,.pp-sm-nav{display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}
.pp-sm-board.empty span:not(.pp-sm-code):not(.pp-sm-state){display:flex;align-items:center;gap:6px}

.pp-super-list{display:grid;gap:8px;margin:8px 0}
.pp-super-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.pp-super-row .grow{display:grid;gap:2px;min-width:160px}
.pp-super-row small{color:var(--muted)}
.pp-image-handoff .pp-image-import-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin:12px 0}
.pp-image-handoff .pp-image-import-slot{display:grid;gap:6px;min-width:0;padding:8px;border:1px solid var(--line);border-radius:12px;cursor:pointer}
.pp-image-handoff .pp-image-import-slot>span{display:grid;place-items:center;aspect-ratio:16/9;background:var(--soft);border-radius:8px;overflow:hidden;font-size:12px;color:var(--muted)}
.pp-image-handoff .pp-image-import-slot img{width:100%;height:100%;object-fit:contain}
.pp-image-handoff .pp-image-prompt{width:100%;min-width:0}.pp-image-handoff .pp-image-sheet-choice{display:flex;gap:8px;align-items:center;margin-top:10px}
.pp-image-handoff [data-image-error]{color:var(--danger)}
.pp-super-sheet .pp-super-sheet-head,.pp-super-sheet .pp-super-take-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pp-super-sheet .pp-super-shot{border:1px solid var(--line);border-radius:12px;margin:8px 0;overflow:hidden}
.pp-super-sheet .pp-super-shot>summary{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 10px;padding:10px;cursor:pointer}
.pp-super-sheet .pp-super-shot>summary small{grid-column:2;color:var(--muted)}
.pp-super-sheet .pp-super-shot-body{display:grid;gap:10px;padding:0 10px 12px}
.pp-super-sheet .pp-super-take{display:grid;gap:8px;background:var(--soft);border-radius:10px;padding:10px}
.pp-super-sheet .pp-super-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:8px}
.pp-super-sheet label{display:grid;gap:4px;min-width:0;font-size:13px}.pp-super-sheet input,.pp-super-sheet textarea{width:100%;min-width:0}
.pp-super-sheet .pp-super-tags summary{font-size:12px;color:var(--muted);cursor:pointer}.pp-super-sheet .pp-super-tags .btn-row{margin-top:8px}
@media(max-width:500px){.pp-super-sheet .pp-super-fields{grid-template-columns:minmax(0,1fr)}}
.pp-super-counter{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin-block:8px 14px}.pp-super-counter label{display:grid;gap:4px;font-size:.85em;min-width:0}.pp-super-counter label:first-child{width:72px}.pp-super-counter label:nth-child(2){width:150px}.pp-super-counter label:has([type=checkbox]){display:flex;align-items:center}.pp-super-counter small{flex-basis:100%;color:var(--muted);font-size:.75em}.pp-super-counter input:not([type=checkbox]){width:100%;min-width:0}

.pp-formats{min-width:0;border:1px solid var(--line);border-radius:12px;padding:12px}.pp-formats .btn-row{gap:10px;flex-wrap:wrap}.pp-formats label{display:inline-flex;align-items:center;gap:6px}.pp-formats input[type=number]{width:100px;min-width:0}.pp-format-selector{margin-block:6px;gap:8px;flex-wrap:wrap}.pp-format-selector select{max-width:100%;min-width:0}

.pp-format-board .sb-img,.pp-format-board .pp-board-img{aspect-ratio:var(--pp-board-ratio)!important;background-size:contain!important}

.pp-format-selector [data-output-custom]{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.pp-format-selector [data-output-custom][hidden]{display:none}.pp-format-selector [data-output-custom] input{width:100px;max-width:100%}.pp-image-handoff [data-image-paste-target]{min-height:58px;padding:12px;border:1px dashed var(--primary);border-radius:10px;background:var(--soft);overflow:hidden}.pp-image-handoff [data-image-paste-target]:empty::before{content:attr(data-placeholder);color:var(--muted);pointer-events:none}.pp-image-handoff [data-image-paste-target][hidden]{display:none}.pp-image-handoff .pp-image-import-slot>span{aspect-ratio:var(--pp-import-ratio,16/9)}

/* One print preview for the whole app: «چاپ» and «PDF» side by side, on Mac and phone. */
.print-preview.pp-print-panel{background:#202024}
.print-preview.pp-print-panel header{border-bottom:1px solid rgba(255,255,255,.08)}
.print-preview.pp-print-panel header .pp-x{width:36px;height:36px;border-radius:50%;border:0;background:rgba(255,255,255,.1);color:#fff;font-size:15px;cursor:pointer}
.print-preview.pp-print-panel header .pp-x:hover{background:rgba(255,255,255,.18)}
.print-preview footer.pp-print-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;padding:12px 16px calc(env(safe-area-inset-bottom) + 12px);background:#18181b;border-top:1px solid rgba(255,255,255,.08)}
.pp-print-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;min-width:150px;padding:0 20px;border-radius:14px;font:inherit;font-size:15px;font-weight:700;cursor:pointer;transition:transform .12s ease,filter .12s ease,background .12s ease}
.pp-print-btn svg{width:19px;height:19px;flex:none}
.pp-print-btn:active{transform:scale(.97)}
.pp-print-btn:disabled{opacity:.7;cursor:progress}
.pp-print-btn.primary{border:0;background:var(--primary,#c9a227);color:var(--pp-ai-fg,#111)}
.pp-print-btn.primary:hover{filter:brightness(1.08)}
.pp-print-btn.outline{border:1.5px solid rgba(255,255,255,.55);background:transparent;color:#fff}
.pp-print-btn.outline:hover{background:rgba(255,255,255,.08)}
.pp-print-btn.ghost{border:0;background:rgba(255,255,255,.08);color:#fff;min-width:0}
.pp-print-btn .spinner{width:16px;height:16px}
@media (max-width:640px){
 .print-preview footer.pp-print-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px calc(env(safe-area-inset-bottom) + 10px)}
 .pp-print-btn{min-width:0;width:100%;font-size:14px;padding:0 8px;white-space:nowrap}
 .pp-print-actions .pp-print-btn.ghost{grid-column:1/-1}
 .pp-print-actions .pp-print-btn:last-child:nth-child(odd){grid-column:1/-1}
}

.pp-rough-entry{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px}.pp-rough-entry small{color:var(--muted)}
.pp-rough-cut .pp-rough-install{border:1px solid var(--line);border-radius:12px;padding:12px;margin-block:12px;min-width:0}.pp-rough-install p{overflow-wrap:anywhere}.pp-rough-install small{color:var(--muted)}
.pp-rough-cut .pp-rough-pictures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pp-rough-cut .pp-rough-pictures figure{margin:0;min-width:0}.pp-rough-cut .pp-rough-pictures img{width:100%;aspect-ratio:16/9;object-fit:contain;background:var(--soft);border-radius:8px}.pp-rough-cut figcaption{color:var(--muted);font-size:.8em}
.pp-rough-cut .pp-rough-status{display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);padding-block:8px}.pp-rough-cut .pp-rough-folder{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 0}.pp-rough-cut .pp-rough-shot{display:grid;gap:8px;border:1px solid var(--line);border-radius:14px;padding:12px;min-width:0}.pp-rough-cut .pp-rough-review{display:grid;gap:10px}.pp-rough-cut .pp-rough-media-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pp-rough-cut label{display:grid;gap:4px;min-width:0}.pp-rough-cut input,.pp-rough-cut select{width:100%;min-width:0;box-sizing:border-box}.pp-rough-cut [role=alert]{color:var(--danger)}.pp-rough-cut .btn-row{flex-wrap:wrap}
@media(max-width:520px){.pp-rough-cut .pp-rough-media-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-rough-cut .pp-rough-media-fields label:nth-child(-n+2){grid-column:1/-1}}

.pp-rough-gallery{margin-block:12px}.pp-rough-gallery-list{display:grid;gap:6px;margin-block:10px}.pp-rough-gallery-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:center;padding:8px;border-bottom:1px solid var(--line)}.pp-rough-gallery-list article span,.pp-rough-gallery-list article small{min-width:0;overflow-wrap:anywhere}.pp-rough-gallery-list article small{color:var(--muted)}.pp-rough-gallery-list article button{grid-column:2;grid-row:1/3}

.pp-rough-scanning{display:grid;gap:16px;padding:24px;text-align:center}.pp-rough-scanning progress{width:100%;accent-color:var(--accent)}.pp-rough-cut textarea{width:100%;min-width:0;box-sizing:border-box;resize:vertical;direction:ltr;text-align:left}

.pp-rough-cut .pp-rough-review-bar{position:sticky;top:0;z-index:3;background:var(--panel,var(--bg));border:1px solid var(--line);border-radius:14px;padding:14px;margin-block:14px;box-shadow:0 4px 12px #0002}.pp-rough-review-bar p{margin-block:6px}.pp-rough-review-bar small{color:var(--muted)}.pp-rough-cut .pp-rough-overview{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));align-items:start}.pp-rough-quick-shot header{display:flex;justify-content:space-between;gap:8px;align-items:center}.pp-rough-quick-shot header span{font-size:.75em;color:var(--muted)}.pp-rough-quick-shot p{margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:2.8em}.pp-rough-quick-shot small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.pp-rough-no-frame{aspect-ratio:16/9;display:grid;place-items:center;background:var(--soft);font-size:.8em;border-radius:8px}.pp-rough-cut .pp-rough-quick-shot .pp-rough-pictures img{min-height:80px}

.pp-rough-start{padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--soft)}.pp-rough-start h3{margin:8px 0}.pp-rough-flow-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-block:16px}.pp-rough-root-name{padding:8px 0;overflow-wrap:anywhere}.pp-rough-handoff{border:1px solid var(--accent);border-radius:14px;padding:16px;margin-block:16px}.pp-rough-handoff textarea{direction:ltr;text-align:left}.pp-rough-coverage{font-variant-numeric:tabular-nums;color:var(--accent)}.pp-rough-advanced{margin-block:18px;border-top:1px solid var(--line);padding-top:12px}.pp-rough-advanced>summary{cursor:pointer;color:var(--muted)}.pp-rough-success{padding:12px;background:var(--soft);border-radius:10px}@media(max-width:520px){.pp-rough-flow-inputs{grid-template-columns:minmax(0,1fr)}}
.pp-rough-supervisor{padding:16px;margin:16px 0;border:1px solid var(--line,rgba(255,255,255,.16));border-radius:14px;background:var(--panel,rgba(255,255,255,.035))}.pp-rough-supervisor label{display:grid;gap:6px;max-width:420px}.pp-rough-supervisor [role=status]{display:grid;gap:6px;margin-top:12px}.pp-rough-supervisor details{margin-top:12px}.pp-rough-supervisor details p{padding-block:5px;overflow-wrap:anywhere}

.pp-rough-flow-inputs{direction:rtl}.pp-rough-method{order:-1;text-align:right}.pp-rough-method select{direction:rtl;text-align:right}
.pp-rough-query{display:grid;grid-template-columns:1fr auto;gap:6px 8px;align-items:end;margin:6px 0}
.pp-rough-query label{display:grid;gap:4px;font-size:12px;color:var(--muted,#888)}
.pp-rough-query input{width:100%;min-width:0;font-family:ui-monospace,Menlo,monospace;font-size:13px;text-align:left}
.pp-rough-query small{grid-column:1/-1;color:var(--muted,#888)}
@media (max-width:520px){.pp-rough-query{grid-template-columns:1fr}}
.pp-rough-upgrade{margin:8px 0;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--accent,#c9a227) 12%,transparent);font-size:13px;line-height:1.8}
.pp-rough-upgrade .btn{margin-inline-start:6px}
.pp-rough-music{margin:12px 0;padding:10px 12px;border:1px solid var(--line,rgba(127,127,127,.25));border-radius:12px}
.pp-rough-music>summary{cursor:pointer;font-weight:600}
.pp-music-form{display:grid;grid-template-columns:minmax(140px,1fr) 2fr auto;gap:8px;align-items:end;margin:10px 0}
.pp-music-form label{display:grid;gap:4px;font-size:12px}
.pp-music-copy{margin:8px 0}
.pp-music-copy-head{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin-bottom:4px}
.pp-music-copy textarea{width:100%;box-sizing:border-box;font-family:ui-monospace,Menlo,monospace;font-size:12px;text-align:left;resize:vertical}
.pp-rough-music details{margin:6px 0}
@media (max-width:620px){.pp-music-form{grid-template-columns:1fr}}
/* Cutroom: DaVinci-like page tabs, one compact action bar, collapsible boxes */
.pp-studio-tabs{display:flex;gap:4px;padding:4px;margin:0 0 10px;border-radius:12px;background:var(--surface-2,rgba(127,127,127,.10));position:sticky;top:0;z-index:3}
.pp-studio-tab{flex:1;min-width:0;border:0;background:transparent;color:inherit;font:inherit;font-size:13px;padding:8px 6px;border-radius:9px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:1px;opacity:.72}
.pp-studio-tab.on{background:var(--card,#fff);opacity:1;font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.pp-studio-tab small{font-size:10px;opacity:.7;font-weight:400}
.pp-studio-strip{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;opacity:.8;margin:0 0 10px}
.pp-studio-strip .ok::before{content:'●';color:#2fa45d;margin-inline-end:4px}
.pp-studio-strip .warn::before{content:'●';color:#d08b22;margin-inline-end:4px}
.pp-rough-start .btn-row{position:sticky;top:52px;z-index:2;background:var(--card,#fff);padding:6px 0;margin:6px 0}
.pp-studio-box{margin:10px 0;border:1px solid var(--line,rgba(127,127,127,.25));border-radius:12px;padding:0 12px}
.pp-studio-box>summary{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 0;cursor:pointer;list-style:none}
.pp-studio-box>summary::-webkit-details-marker{display:none}
.pp-studio-box>summary::after{content:'⌄';font-size:16px;opacity:.6;transition:transform .2s}
.pp-studio-box[open]>summary::after{transform:rotate(180deg)}
.pp-studio-box>summary span{font-size:12px;opacity:.75;margin-inline-start:auto}
.pp-studio-box .pp-rough-review{max-height:min(62vh,640px);overflow:auto;padding-bottom:8px}
.pp-studio-soon{padding:28px 12px;text-align:center;opacity:.75}
.pp-rough-music{border:0;padding:0}
@media (max-width:620px){.pp-studio-tab{font-size:12px;padding:7px 2px}.pp-rough-start .btn-row{top:48px}}
/* PLAN PRO Studio: icon tiles for the four pages (approved mock) */
.pp-studio-tabs{gap:8px;padding:0;background:transparent}
.pp-studio-tab{background:var(--s2,rgba(127,127,127,.12));border-radius:14px;padding:12px 6px 10px;gap:6px;opacity:.8}
.pp-studio-tab.on{background:var(--card,#fff);box-shadow:0 0 0 1px var(--line2,rgba(127,127,127,.35)) inset;opacity:1}
.pp-studio-ico svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;display:block}
.pp-studio-soon .pp-studio-ico svg{width:40px;height:40px;margin:0 auto 8px;opacity:.7}
/* Inside DaVinci: the studio is the whole window, always dark like Resolve */
html.pp-studio-mode.pp-studio-mode{--bg:#0d0d0f;--bg2:#141416;--card:#1c1c1f;--ink:#f2f2f2;--ink2:#cfcfd3;--muted:#9a9aa0;--line:#2a2a2e;--line2:#3a3a3f;--s2:#26262a;color-scheme:dark}
html.pp-studio-mode body{background:#0d0d0f}
#pp-studio-root{position:fixed;inset:0;z-index:9000;overflow:auto;background:#0d0d0f;color:#f2f2f2}
html.pp-studio-mode .modal-backdrop{z-index:9500!important;padding:0!important;background:#0d0d0f!important}
html.pp-studio-mode .modal.pp-studio{width:100%!important;max-width:none!important;height:100%;max-height:100%!important;border-radius:0;border:0;background:#0d0d0f;color:#f2f2f2}
html.pp-studio-mode .modal.pp-studio .pp-rough-start .btn-row{background:var(--card)}
.pp-studio-home{max-width:880px;margin:0 auto;padding:28px 18px 40px}
.pp-studio-card{border:1px solid #2a2a2e;border-radius:22px;padding:22px;background:#111113}
.pp-studio-card header{display:flex;align-items:center;gap:16px}
.pp-studio-logo{display:grid;place-items:center;width:64px;height:64px;border-radius:16px;background:#232326}
.pp-studio-logo svg{width:30px;height:30px;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pp-studio-card h1{margin:0;font-size:26px;letter-spacing:.4px;direction:ltr;text-align:start}
.pp-studio-card p{margin:4px 0 0;color:#a3a3a8}
.pp-studio-card hr{border:0;border-top:1px solid #26262a;margin:18px 0}
.pp-studio-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.pp-studio-tiles button{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 8px;border:0;border-radius:16px;background:#232326;color:#f2f2f2;font:inherit;font-size:15px;cursor:pointer}
.pp-studio-tiles button:hover{background:#2c2c30}
.pp-studio-tiles button:disabled{opacity:.4;cursor:default}
.pp-studio-tiles svg{width:26px;height:26px}
.pp-studio-projects{margin-top:22px}
.pp-studio-projects h2{font-size:14px;color:#a3a3a8;font-weight:500;margin:0 0 10px}
.pp-studio-project{display:flex;justify-content:space-between;align-items:center;width:100%;margin:0 0 8px;padding:14px 16px;border:1px solid #26262a;border-radius:14px;background:#151517;color:#f2f2f2;font:inherit;cursor:pointer;text-align:start}
.pp-studio-project.on,.pp-studio-project:hover{border-color:#4a4a50;background:#1c1c1f}
.pp-studio-project small{color:#8d8d93}
@media (max-width:620px){.pp-studio-tiles{grid-template-columns:repeat(2,1fr)}}
#pp-studio-gate{position:fixed;inset:0;z-index:9800;overflow:auto;background:#0d0d0f;color:#f2f2f2}
.pp-studio-lead{line-height:2;color:#d6d6da;margin:0}
.pp-studio-wait{color:#9a9aa0;font-size:13px}
.pp-studio-link{border:0;background:none;color:#8fb3ff;font:inherit;font-size:13px;cursor:pointer;padding:0}
.pp-studio-install .pp-studio-card{color:#ececf1}
.pp-studio-steps{margin:14px 0 0;padding-inline-start:22px;color:#c9c9d3;line-height:2}
.pp-studio-install .btn-row{margin-top:16px}
.pp-studio-install [data-studio-msg]{color:#c9c9d3;margin-top:12px}
/* Compact "details" review card */
.pp-rough-cut .pp-rough-detail{gap:6px;padding:10px 12px}
.pp-rough-detail header{display:flex;align-items:center;gap:8px;min-width:0}.pp-rough-detail header small{margin-inline-start:auto;color:var(--muted)}
.pp-rough-chip{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--soft,#ffffff14);color:var(--muted)}
.pp-rough-desc{margin:0;font-size:12.5px;color:var(--muted);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.pp-rough-detail-body{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:10px;align-items:start}
.pp-rough-cut .pp-rough-detail .pp-rough-pictures img,.pp-rough-detail .pp-rough-no-frame{max-height:120px}
.pp-rough-detail-controls{display:grid;gap:6px;min-width:0}
.pp-rough-range{display:flex;align-items:end;gap:6px}.pp-rough-cut .pp-rough-range label{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--muted)}.pp-rough-cut .pp-rough-range input{width:84px}.pp-rough-range span{font-size:11px;color:var(--muted)}
.pp-rough-detail [data-rough-evidence]{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pp-rough-more>summary{cursor:pointer;font-size:12px;color:var(--muted);list-style:none}.pp-rough-more>summary::before{content:'⋯ '}.pp-rough-more[open]{display:grid;gap:6px}
@media (max-width:640px){.pp-rough-detail-body{grid-template-columns:1fr}}
/* Media Pool switches */
.pp-studio-storage-title{display:block;margin-bottom:6px}
.pp-studio-switch{display:flex;align-items:flex-start;gap:10px;width:100%;padding:8px 0;border:0;background:none;color:inherit;font:inherit;text-align:start;cursor:pointer}
.pp-studio-switch:disabled{opacity:.55;cursor:default}
.pp-studio-knob{flex:none;position:relative;width:34px;height:20px;margin-top:2px;border-radius:999px;background:#5b6470;transition:background .15s}
.pp-studio-knob::after{content:'';position:absolute;top:2px;inset-inline-start:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:inset-inline-start .15s}
.pp-studio-switch[aria-checked=true] .pp-studio-knob{background:#34c759}.pp-studio-switch[aria-checked=true] .pp-studio-knob::after{inset-inline-start:16px}
.pp-studio-switch-text{display:grid;gap:2px;min-width:0}.pp-studio-switch-text small{color:var(--muted);font-size:12px;line-height:1.6}
.pp-studio-tool img{flex:none;width:20px;height:20px;object-fit:contain}

/* Mobile presentation only: retain desktop layout, theme and all data handlers. */
.pp-mobile-options{padding:14px!important;border:1px solid var(--line,#ffffff18)!important;border-radius:16px!important;background:var(--card)!important;margin:0 0 12px!important;min-width:0}
.pp-mobile-options legend{font-size:14px!important;padding:0 5px!important;color:var(--ink)}
.pp-mobile-options .plan-display-option{min-height:44px!important;font-size:14px;gap:10px}
.pp-mobile-options input{accent-color:var(--primary);width:20px!important;height:20px!important;flex:none}
.pp-mobile-timer-reveal[hidden]{display:none!important}
@media(max-width:699px){
 html body #main :is(.view-today,.view-actions){--pp-mobile-card-radius:15px}
 html body #main .view-today .plan-today-activities{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
 html body #main :is(.view-today,.view-actions) .plan-display-group-cards{display:grid!important;gap:10px!important}
 html body #main :is(.view-today,.view-actions) .plan-hub-entry{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;min-width:0}
 html body #main .pp-mobile-activity{border:1px solid color-mix(in srgb,var(--ink) 12%,transparent)!important;border-radius:var(--pp-mobile-card-radius,15px)!important;background:color-mix(in srgb,var(--card) 94%,var(--ink) 6%)!important;box-shadow:none!important;padding:0!important;overflow:hidden;min-width:0;max-width:100%;margin:0!important}
 html body #main .pp-mobile-activity>.plan-task{display:flex!important;align-items:center!important;gap:8px!important;padding:8px 10px!important;min-height:60px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:var(--ink)!important;position:relative!important}
 html body #main .pp-mobile-activity>.plan-task:before,html body #main .pp-mobile-activity>.plan-task:after{display:none!important}
 html body #main .pp-mobile-activity>.plan-task>.check{width:25px!important;height:25px!important;min-width:25px!important;min-height:25px!important;margin:9px!important;border-radius:8px!important;flex:none;box-shadow:0 0 0 8px transparent}
 html body #main .pp-mobile-activity .plan-item-main{flex:1!important;min-width:0!important;padding:9px 0!important;min-height:44px!important;display:block!important;background:transparent!important;color:var(--ink)!important;text-align:start!important;border:0!important;box-shadow:none!important}
 html body #main .pp-mobile-activity .plan-item-main>b{font-size:15px!important;line-height:1.65!important;font-weight:550!important;display:block!important;white-space:normal!important;overflow-wrap:anywhere}
 html body #main .pp-mobile-card-toggle{display:grid!important;place-items:center;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border:0!important;padding:0!important;border-radius:12px!important;background:transparent!important;color:var(--muted)!important;flex:none;box-shadow:none!important}
 .pp-mobile-card-toggle svg{width:17px!important;height:17px!important;transition:transform .16s ease}.pp-mobile-card-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
 html body #main .pp-mobile-card-body{padding:0 16px 12px!important;margin:0 14px!important;border-top:1px solid color-mix(in srgb,var(--ink) 9%,transparent);font-size:13px;color:var(--muted);min-width:0}
 html body #main .pp-mobile-card-body[hidden]{display:none!important}
 .pp-mobile-field{margin-top:10px;min-width:0;overflow-wrap:anywhere}.pp-mobile-description{white-space:pre-wrap;margin:0;line-height:1.9;font-size:13px;color:var(--muted)}
 html body #main .pp-mobile-card-body .plan-activity-owners{display:flex!important;gap:8px;flex-wrap:wrap;color:var(--muted)!important;background:transparent!important}.pp-mobile-card-body .plan-activity-owners span{background:transparent!important;color:inherit!important;font-size:12px!important}
 .pp-mobile-tag{display:inline-block;border-radius:6px;padding:2px 7px;background:color-mix(in srgb,var(--ink) 7%,transparent);color:var(--muted);font-size:11px;margin-inline-end:5px}
 html body #main .pp-mobile-card-body .plan-subactivities{border:0!important;background:transparent!important;padding:0!important;margin:10px 0!important}.pp-mobile-card-body .plan-subactivities>summary{display:none!important}
 html body #main .pp-mobile-card-body .plan-subactivity-row{padding:5px 0!important;min-height:44px!important;background:transparent!important;border:0!important;font-size:13px!important;gap:10px!important}
 html body #main .pp-mobile-card-body .plan-subactivity-row b{font-size:13px!important;font-weight:450!important}.pp-mobile-card-body .plan-subactivity-row input{width:23px!important;height:23px!important;min-width:23px!important;flex:none}
 .pp-mobile-progress{display:flex;align-items:center;gap:12px}.pp-mobile-progress progress{height:4px;flex:1;min-width:0;accent-color:var(--primary)}
 .pp-mobile-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:6px;flex-wrap:wrap}.pp-mobile-card-actions button{min-height:44px!important;min-width:44px!important;background:transparent!important;border:0!important;color:var(--muted)!important}.pp-mobile-card-actions .plan-swipe-delete{position:static!important;transform:none!important;width:auto!important;font-size:12px!important}
 html body #main :is(.view-today,.view-actions) .plan-display-group-head{min-height:44px!important;padding:8px 2px!important;font-size:13px!important;background:transparent!important;border:0!important;box-shadow:none!important}.plan-display-group-head small{font-size:12px!important;font-weight:400}
 html body #main .plan-week-strip{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:7px!important;padding:4px 0 12px!important;background:transparent!important;border:0!important;margin:4px 0!important}
 html body #main .plan-week-strip>button{min-width:0!important;min-height:55px!important;height:auto!important;border-radius:11px!important;padding:6px 1px!important;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent)!important;background:color-mix(in srgb,var(--card) 96%,var(--ink) 4%)!important;box-shadow:none!important;gap:2px!important}
 html body #main .plan-week-strip>button small{font-size:10px!important;white-space:nowrap!important}.plan-week-strip>button b{font-size:16px!important;font-weight:500!important}
 html body #main .plan-week-strip>button.selected{border-color:color-mix(in srgb,var(--primary) 65%,transparent)!important;background:color-mix(in srgb,var(--primary) 22%,var(--card))!important}
 html body #main .plan-week-strip>button>i{display:none!important}
 html body #main .plan-review-buttons{gap:8px!important;margin-block:4px 10px!important}
 html body #main .plan-review-buttons>button{height:40px!important;min-height:40px!important;padding:8px!important;font-size:13px!important;border-radius:11px!important;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent)!important;background:var(--card)!important;box-shadow:none!important}
 html body>.plan-global-timer.pp-mobile-timer{min-height:44px!important;height:44px!important;padding:0 4px!important;gap:0!important;border-radius:12px!important;box-shadow:none!important;border:1px solid color-mix(in srgb,var(--ink) 12%,transparent)!important;background:var(--card)!important}
 html body>.pp-mobile-timer .plan-global-timer-main{gap:7px!important;min-width:0!important;min-height:42px!important;padding:4px 8px!important;flex:1!important}.pp-mobile-timer .plan-global-timer-label{min-width:0!important}.pp-mobile-timer .plan-global-timer-label b{display:block!important;max-width:95px!important;font-size:11px!important;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.pp-mobile-timer .plan-global-timer-label small{display:none!important}
 html body>.pp-mobile-timer strong{font-size:14px!important;line-height:1!important;white-space:nowrap!important;font-variant-numeric:tabular-nums;direction:ltr}.pp-mobile-timer .live-dot{width:5px!important;height:5px!important;flex:none;animation:none!important}
 html body>.pp-mobile-timer>button:not(.plan-global-timer-main){min-width:40px!important;width:40px!important;height:42px!important;min-height:42px!important;padding:9px!important}.pp-mobile-timer svg{width:16px!important;height:16px!important}
 html body>.plan-global-timer.pp-mobile-timer-eye{width:44px!important;height:44px!important;min-height:44px!important;left:auto!important;right:12px!important;top:auto!important;bottom:calc(84px + env(safe-area-inset-bottom,0px))!important;border-radius:50%!important;padding:0!important;z-index:70!important}
 html body>.pp-mobile-timer-eye>*:not([data-mobile-timer-eye]){display:none!important}
 html body>.pp-mobile-timer-eye>[data-mobile-timer-eye]{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;min-height:44px!important;min-width:44px!important;background:transparent!important;border:0!important;border-radius:50%!important;color:var(--primary)!important}
 html body .plan-display-sheet{max-width:100%!important;width:100%!important}.plan-display-sheet .modal-body{padding:14px!important}
 @media(prefers-reduced-motion:reduce){.pp-mobile-card-toggle svg{transition:none}}
}
@media(max-width:699px){
 html body #main :is(.view-today,.view-actions) .plan-display-group{margin:0 0 12px!important}
 html body #main .pp-fixed-daily-host .pp-daily-status:not(.pp-mobile-daily-open){min-height:44px!important;height:auto!important;padding:6px 12px!important;display:flex!important;align-items:center!important;gap:10px!important;direction:rtl;border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important}
 html body #main .pp-daily-status:not(.pp-mobile-daily-open) .pp-daily-summary{flex:1!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:7px!important;min-width:0!important}
 html body #main .pp-daily-status:not(.pp-mobile-daily-open) .pp-daily-greeting{font-size:12px!important;white-space:nowrap!important;font-weight:400!important}.pp-daily-status:not(.pp-mobile-daily-open) .pp-daily-icon{display:none!important}
 html body #main .pp-daily-status:not(.pp-mobile-daily-open) .pp-daily-caption{font-size:11px!important;margin:0!important;color:var(--muted)!important}
 html body #main .pp-daily-status:not(.pp-mobile-daily-open) :is(.pp-daily-mosaic,.pp-daily-weather){display:none!important}
 html body #main .pp-mobile-daily-toggle{width:32px!important;height:32px!important;min-height:32px!important;min-width:32px!important;background:transparent!important;border:0!important;color:var(--muted)!important;display:grid;place-items:center;padding:7px!important;flex:none}
 .pp-mobile-daily-toggle svg{width:16px;height:16px}.pp-mobile-daily-open .pp-mobile-daily-toggle svg{transform:rotate(180deg)}
}
@media(min-width:700px){.pp-mobile-daily-toggle{display:none!important}}
@media(max-width:699px){
 html body #main .pp-fixed-daily-host .pp-daily-status:not(.pp-mobile-daily-open){background-image:none!important}
}
@media(max-width:699px){
 .pp-mobile-check-hit{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;min-width:44px!important;margin:0!important;flex:none;cursor:pointer}
 html body #main .pp-mobile-check-hit>.check{width:25px!important;height:25px!important;min-width:25px!important;min-height:25px!important;margin:0!important;border-radius:8px!important}
 html body #main .pp-mobile-activity .plan-item-main>.plan-activity-owners{display:none!important}
 html body #main .pp-mobile-daily-toggle{width:44px!important;height:44px!important;min-height:44px!important;min-width:44px!important}
}
@media(max-width:699px){
 html body #main{scrollbar-width:none!important}html body #main::-webkit-scrollbar{display:none!important}
 html body #main .view-today .plan-start-simple{padding-top:0!important}
 html body #main .view-today .plan-today-activities{margin-top:8px!important}
 html body #main :is(.view-today,.view-actions) .plan-day-list{gap:0!important}
}
@media(max-width:699px){
 html.pp-fixed-chrome body #main .pp-fixed-daily-host>.pp-daily-status:not(.pp-mobile-daily-open){background:none!important;padding:0 8px!important;margin:4px 0 8px!important}
 html.pp-fixed-chrome body #main .pp-fixed-daily-host>.pp-daily-status:not(.pp-mobile-daily-open)::before{display:none!important}
}

@media(max-width:699px){
 .plan-display-form .pp-mobile-mode-options,.plan-display-form .pp-mobile-timer-options,.plan-display-form .pp-mobile-detail-options{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px!important}
 .plan-display-form .pp-mobile-mode-options>label,.plan-display-form .pp-mobile-timer-options>label,.plan-display-form .pp-mobile-detail-options>label{border:0!important;padding:7px 0!important;margin:0!important;min-width:0!important;font-size:13px!important}
 .plan-display-form .pp-mobile-options{padding:10px 12px!important;margin-bottom:14px!important}
 .plan-display-form .pp-mobile-timer-options{margin-top:14px!important}
}

.pp-whole-draggable{cursor:grab}.pp-whole-draggable :is(.plan-item-main,.plan-goal-reference-main,.plan-project-main){cursor:grab!important}
.pp-whole-draggable:focus-visible{outline:2px solid var(--primary);outline-offset:3px}
.pp-whole-drag-active,.pp-whole-drag-active *{user-select:none!important;-webkit-user-select:none!important;-webkit-touch-callout:none!important;cursor:grabbing!important}
.pp-whole-drag-source{opacity:.45!important}
.pp-whole-drag-before{outline:2px solid var(--primary)!important;outline-offset:3px;box-shadow:0 -4px 0 var(--primary)!important}
.pp-whole-drag-after{outline:2px solid var(--primary)!important;outline-offset:3px;box-shadow:0 4px 0 var(--primary)!important}
.pp-whole-drag-preview{position:fixed;z-index:99999;pointer-events:none;padding:14px 18px;border:1px solid var(--primary);background:var(--card,#202731);color:var(--ink,#fff);border-radius:14px;box-shadow:0 12px 32px #0003;font:500 14px/1.6 inherit;text-align:start;direction:rtl;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box}
.pp-whole-drag-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* Keep card controls below the fixed Today header when focusing/scrolling. */
 html.pp-fixed-chrome body #main:has(.pp-mobile-activity){scroll-padding-top:calc(var(--pp-daily-fixed-height,0px) + 12px)!important;scroll-padding-bottom:90px!important}
 .pp-mobile-activity :is(button,input,textarea){scroll-margin-block:12px}
/* Hidden overflow still permits focus-driven body scrolling beneath fixed chrome. */
@supports(overflow:clip){@media(max-width:699px){html.pp-fixed-chrome,html.pp-fixed-chrome body{overflow:clip!important}}}
@media(min-width:700px){html.pp-fixed-chrome:has(.pp-mobile-activity){scroll-padding-top:calc(var(--pp-chrome-height,0px) + var(--pp-daily-fixed-height,0px) + 12px);scroll-padding-bottom:20px}}

@media(min-width:900px){
 html body #main .pp-compact-editing{display:flex;flex-direction:column;gap:12px;min-width:0;padding:0!important}
 html body #main .pp-compact-editing>.pp-edit-mode{margin:0!important;padding:0!important;gap:6px!important;min-height:32px}
 html body #main .pp-compact-editing>.pp-edit-connection{margin:0!important;padding:8px 12px!important;min-height:34px;font-size:13px!important}
 html body #main .pp-compact-editing>.pp-edit-summary{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin:0!important}
 html body #main .pp-compact-editing>.pp-edit-summary>div{padding:10px 12px!important;min-height:64px!important;border-radius:12px!important}
 html body #main .pp-compact-editing>.pp-edit-summary span{font-size:12px!important}html body #main .pp-compact-editing>.pp-edit-summary b{font-size:16px!important}
 .pp-edit-io-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:12px;align-items:start;min-width:0}
 html body #main .pp-edit-io-grid>.pp-work-resolve,.pp-edit-output-panel{min-width:0;margin:0!important;padding:14px!important;border:1px solid var(--line,#ffffff18)!important;border-radius:14px!important;background:var(--card)!important}
 .pp-edit-output-panel>h3{font-size:14px;margin:0 0 12px;font-weight:550}
 html body #main .pp-edit-io-grid .pp-work-resolve-head{gap:8px!important;margin:0 0 10px!important;min-height:32px!important}
 html body #main .pp-edit-io-grid .pp-work-resolve-head img{width:26px!important;height:26px!important}
 html body #main .pp-edit-io-grid .pp-work-resolve-head b{font-size:14px!important}.pp-edit-io-grid .pp-work-resolve-head small{font-size:11px!important}
 html body #main .pp-edit-io-grid .pp-work-prepare{display:flex!important;flex-wrap:wrap!important;gap:8px!important;padding:0!important;margin:0!important}
 html body #main .pp-edit-io-grid .pp-work-prepare>.btn{flex:1 1 auto!important;min-height:36px!important;font-size:12px!important;padding:7px 10px!important}
 .pp-edit-io-grid .pp-work-prepare-error:empty{display:none!important}
 html body #main .pp-compact-editing .pp-work-details{margin:0!important;border:1px solid var(--line,#ffffff18)!important;border-radius:12px!important;padding:0!important;min-width:0;background:var(--card)!important}
 html body #main .pp-compact-editing .pp-work-details>summary{display:flex!important;align-items:center!important;gap:8px!important;min-height:42px!important;padding:10px 12px!important;font-size:13px!important;font-weight:500!important;cursor:pointer;list-style:none}
 .pp-compact-editing .pp-work-details>summary::before{content:'›';font-size:19px;line-height:1;color:var(--muted);transform:rotate(-90deg)}.pp-compact-editing .pp-work-details[open]>summary::before{transform:rotate(90deg)}
 .pp-edit-io-grid .pp-work-details{margin-top:12px!important}
 html body #main .pp-compact-editing .pp-work-detail-body{padding:12px!important;margin:0!important;border-top:1px solid var(--line,#ffffff18);font-size:12px!important;min-width:0}
 html body #main .pp-edit-io-grid .pp-film-edit{margin:0!important;padding:0!important;border:0!important;background:transparent!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(100px,.7fr);gap:8px!important}
 .pp-edit-io-grid .pp-format-selector{display:block!important;min-width:0;margin:0!important}.pp-edit-io-grid .pp-format-selector>label{display:grid;gap:6px;font-size:12px}.pp-edit-io-grid .pp-format-selector select{width:100%!important;min-width:0!important;max-width:100%!important}
 html body #main .pp-edit-io-grid .pp-fe-dur{margin:0!important;padding:0!important;display:grid!important;gap:6px!important;min-width:0;font-size:12px!important}
 html body #main .pp-edit-io-grid :is(input,select){height:36px!important;min-height:36px!important;padding:6px 8px!important;font-size:13px!important;box-sizing:border-box}
 html body #main .pp-edit-io-grid .pp-fe-dur>input{width:100%!important;min-width:0!important}
 html body #main .pp-edit-output-panel .pp-export-box{margin:12px 0 0!important;padding:0!important;border:0!important;background:transparent!important}
 html body #main .pp-edit-output-panel .pp-export-drop{min-height:76px!important;gap:10px!important;padding:12px!important;border-radius:10px!important;display:flex!important;align-items:center!important}
 .pp-edit-output-panel .pp-export-drop>svg{width:22px!important;height:22px!important;flex:none}.pp-edit-output-panel .pp-export-drop b{font-size:12px!important}.pp-edit-output-panel .pp-export-drop small{font-size:10px!important;line-height:1.8!important}.pp-edit-output-panel .pp-export-list:empty{display:none!important}
 html body #main .pp-compact-editing>.pp-edit-manual{margin:0!important;padding:0!important;display:flex!important;gap:8px!important}.pp-compact-editing>.pp-edit-manual button{min-height:34px!important;font-size:12px!important}
 .pp-edit-fold-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
 html body #main .pp-edit-steps-fold .pp-resolve-plan,html body #main .pp-edit-steps-fold .pp-edit-steps{margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
 html body #main .pp-edit-steps-fold .plan-section-head{padding:0!important;min-height:30px!important;margin:0 0 8px!important}.pp-edit-steps-fold .plan-section-head h2{font-size:12px!important}.pp-edit-steps-fold .plan-section-head button{font-size:11px!important}
 html body #main .pp-edit-steps-fold form[data-form=ppResolveEstimates]{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important}
 html body #main .pp-edit-steps-fold .pp-resolve-plan-row{display:grid!important;grid-template-columns:24px minmax(0,1fr) 76px!important;gap:8px!important;min-height:64px!important;margin:0!important;padding:8px 0!important}
 html body #main .pp-edit-steps-fold .pp-resolve-plan-row>div{min-width:0!important}.pp-edit-steps-fold .pp-resolve-plan-row b{font-size:13px!important}.pp-edit-steps-fold .pp-resolve-plan-row small{font-size:10px!important}.pp-edit-steps-fold .pp-resolve-plan-row input{width:100%!important;min-width:0!important;height:34px!important;font-size:13px!important}.pp-edit-steps-fold .pt-tick{width:22px!important;height:22px!important;min-width:22px!important}
 html body #main .pp-edit-install-fold .pp-fe-install,.pp-edit-rough-install{display:flex!important;align-items:center!important;gap:10px!important;margin:0!important;padding:10px 0!important;border:0!important;background:transparent!important;font-size:12px!important;border-radius:0!important}
 .pp-edit-install-fold .pp-fe-install>span,.pp-edit-rough-install>div{flex:1;min-width:0}.pp-edit-install-fold .pp-fe-install>svg{display:none}.pp-edit-install-fold .pp-fe-install b,.pp-edit-rough-install b{display:block;font-size:13px!important}.pp-edit-install-fold .pp-fe-install small,.pp-edit-rough-install small{display:block;font-size:11px!important;color:var(--muted);line-height:1.8}.pp-edit-install-fold a.btn{font-size:11px!important;white-space:nowrap}
}
@media(min-width:900px){
 .pp-compact-editing>.pp-edit-controls{display:flex;align-items:center;gap:12px;min-width:0}
 html body #main .pp-edit-controls>.pp-edit-mode{margin:0!important;padding:0!important;flex:none;gap:6px!important}
 html body #main .pp-edit-controls>.pp-edit-mode>.btn{height:32px!important;min-height:32px!important;padding:5px 12px!important;font-size:12px!important}
 html body #main .pp-edit-controls>.pp-edit-connection{margin:0!important;padding:6px 8px!important;flex:1;min-width:0;min-height:32px;font-size:12px!important}
 .pp-edit-output-panel [data-output-custom]:not([hidden]){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.pp-edit-output-panel [data-output-custom][hidden]{display:none!important}.pp-edit-output-panel [data-output-custom] input{width:100%!important;min-width:0!important}.pp-edit-output-panel [data-output-apply]{grid-column:1/-1}
}
@media(min-width:1100px){
 .pp-edit-fold-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .pp-edit-fold-grid>.pp-work-details[open]{grid-column:span 2}
 html body #main .pp-compact-editing{gap:10px!important}
}

@media(min-width:900px){html body #main .pp-edit-steps-fold .pp-manual-edit-plan{margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}}

/* The same optional card details on Mac; toolbar and live timer keep their original layout. */
@media(min-width:700px){
 html body #main :is(.view-today,.view-actions){--pp-mobile-card-radius:15px}
 html body #main .view-today .plan-today-activities{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
 html body #main :is(.view-today,.view-actions) .plan-display-group-cards{display:grid!important;gap:10px!important}
 html body #main :is(.view-today,.view-actions) .plan-hub-entry{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;min-width:0}
 html body #main .pp-mobile-activity{border:1px solid color-mix(in srgb,var(--ink) 12%,transparent)!important;border-radius:var(--pp-mobile-card-radius,15px)!important;background:color-mix(in srgb,var(--card) 94%,var(--ink) 6%)!important;box-shadow:none!important;padding:0!important;overflow:hidden;min-width:0;max-width:100%;margin:0!important}
 html body #main .pp-mobile-activity>.plan-task{display:flex!important;align-items:center!important;gap:8px!important;padding:8px 10px!important;min-height:60px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:var(--ink)!important;position:relative!important}
 html body #main .pp-mobile-activity>.plan-task:before,html body #main .pp-mobile-activity>.plan-task:after{display:none!important}
 html body #main .pp-mobile-activity>.plan-task>.check{width:25px!important;height:25px!important;min-width:25px!important;min-height:25px!important;margin:9px!important;border-radius:8px!important;flex:none;box-shadow:0 0 0 8px transparent}
 html body #main .pp-mobile-activity .plan-item-main{flex:1!important;min-width:0!important;padding:9px 0!important;min-height:44px!important;display:block!important;background:transparent!important;color:var(--ink)!important;text-align:start!important;border:0!important;box-shadow:none!important}
 html body #main .pp-mobile-activity .plan-item-main>b{font-size:15px!important;line-height:1.65!important;font-weight:550!important;display:block!important;white-space:normal!important;overflow-wrap:anywhere}
 html body #main .pp-mobile-card-toggle{display:grid!important;place-items:center;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border:0!important;padding:0!important;border-radius:12px!important;background:transparent!important;color:var(--muted)!important;flex:none;box-shadow:none!important}
 .pp-mobile-card-toggle svg{width:17px!important;height:17px!important;transition:transform .16s ease}.pp-mobile-card-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
 html body #main .pp-mobile-card-body{padding:0 16px 12px!important;margin:0 14px!important;border-top:1px solid color-mix(in srgb,var(--ink) 9%,transparent);font-size:13px;color:var(--muted);min-width:0}
 html body #main .pp-mobile-card-body[hidden]{display:none!important}
 .pp-mobile-field{margin-top:10px;min-width:0;overflow-wrap:anywhere}.pp-mobile-description{white-space:pre-wrap;margin:0;line-height:1.9;font-size:13px;color:var(--muted)}
 html body #main .pp-mobile-card-body .plan-activity-owners{display:flex!important;gap:8px;flex-wrap:wrap;color:var(--muted)!important;background:transparent!important}.pp-mobile-card-body .plan-activity-owners span{background:transparent!important;color:inherit!important;font-size:12px!important}
 .pp-mobile-tag{display:inline-block;border-radius:6px;padding:2px 7px;background:color-mix(in srgb,var(--ink) 7%,transparent);color:var(--muted);font-size:11px;margin-inline-end:5px}
 html body #main .pp-mobile-card-body .plan-subactivities{border:0!important;background:transparent!important;padding:0!important;margin:10px 0!important}.pp-mobile-card-body .plan-subactivities>summary{display:none!important}
 html body #main .pp-mobile-card-body .plan-subactivity-row{padding:5px 0!important;min-height:44px!important;background:transparent!important;border:0!important;font-size:13px!important;gap:10px!important}
 html body #main .pp-mobile-card-body .plan-subactivity-row b{font-size:13px!important;font-weight:450!important}.pp-mobile-card-body .plan-subactivity-row input{width:23px!important;height:23px!important;min-width:23px!important;flex:none}
 .pp-mobile-progress{display:flex;align-items:center;gap:12px}.pp-mobile-progress progress{height:4px;flex:1;min-width:0;accent-color:var(--primary)}
 .pp-mobile-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:6px;flex-wrap:wrap}.pp-mobile-card-actions button{min-height:44px!important;min-width:44px!important;background:transparent!important;border:0!important;color:var(--muted)!important}.pp-mobile-card-actions .plan-swipe-delete{position:static!important;transform:none!important;width:auto!important;font-size:12px!important}
 html body #main :is(.view-today,.view-actions) .plan-display-group-head{min-height:44px!important;padding:8px 2px!important;font-size:13px!important;background:transparent!important;border:0!important;box-shadow:none!important}.plan-display-group-head small{font-size:12px!important;font-weight:400}
 .pp-mobile-check-hit{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;min-width:44px!important;margin:0!important;flex:none;cursor:pointer}
 html body #main .pp-mobile-check-hit>.check{width:25px!important;height:25px!important;min-width:25px!important;min-height:25px!important;margin:0!important;border-radius:8px!important}
 html body #main .pp-mobile-activity .plan-item-main>.plan-activity-owners{display:none!important}
 html body #main .pp-mobile-daily-toggle{width:44px!important;height:44px!important;min-height:44px!important;min-width:44px!important}
 .pp-mobile-card-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pp-mobile-card-options .pp-mobile-detail-options{display:grid;grid-template-columns:1fr 1fr}
}

/* Compact project overview on phone and Mac. No changes to phase routes or project data. */
html body #main .view-project>.plan-project-work-header{padding:8px 0!important;margin:0 0 10px!important;min-height:0!important;display:flex!important;align-items:center;gap:12px;flex-wrap:wrap}
html body #main .view-project>.plan-project-work-header .plan-project-progress-strip{flex:1;min-width:150px;margin:0!important;padding:0!important;font-size:12px!important}
html body #main .view-project>.plan-project-work-header .plan-project-work-tools{margin:0!important;gap:6px!important}
html body #main .view-project>.plan-project-work-header .plan-project-work-tools>.btn{min-height:34px!important;padding:6px 10px!important;font-size:12px!important}
html body #main .view-project .pp-visual-detail-cover{--pp-cover-height:108px;border-radius:14px!important;margin-bottom:10px!important;min-height:0!important}
html body #main .view-project .pp-visual-detail-cover:has(>img){display:grid!important;grid-template-columns:108px minmax(0,1fr)!important;align-items:stretch}
html body #main .view-project .pp-visual-detail-cover>img{width:108px!important;height:100%!important;min-height:108px!important;max-height:140px!important;object-fit:cover!important}
html body #main .view-project .pp-visual-detail-cover>div{padding:12px!important;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:center}
html body #main .view-project .pp-visual-detail-cover h2{font-size:17px!important;line-height:1.5!important;margin:0!important;overflow-wrap:anywhere}
html body #main .view-project .pp-visual-detail-cover p{font-size:12px!important;line-height:1.5!important;margin:0!important;grid-column:1}
html body #main .view-project .pp-visual-detail-cover .pp-visual-progress{grid-column:1;margin:2px 0 0!important;gap:6px!important}
html body #main .view-project .pp-visual-detail-cover .pp-visual-tiles{gap:3px!important;flex-wrap:wrap}
html body #main .view-project .pp-visual-detail-cover .pp-visual-tiles i{width:12px!important;height:12px!important;flex-basis:12px!important}
html body #main .view-project .pp-visual-detail-cover .pp-project-card-actions{grid-column:2;grid-row:1 / span 3;position:static!important;display:flex!important;align-items:center;gap:4px!important;margin:0!important}
html body #main .view-project .pp-visual-detail-cover .pp-project-card-actions>.icon-btn{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;padding:8px!important}
html body #main .view-project .pp-visual-phase-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:0 0 12px!important}
html body #main .view-project .pp-visual-phase-cards>button{border-radius:12px!important;min-width:0!important;min-height:78px!important}
html body #main .view-project .pp-visual-phase-cards img{display:none!important}
html body #main .view-project .pp-visual-phase-cards span{display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;grid-template-rows:auto auto;gap:3px 10px!important;padding:12px!important;align-items:center}
html body #main .view-project .pp-visual-phase-cards svg{grid-row:1 / span 2;width:32px!important;height:32px!important}
html body #main .view-project .pp-visual-phase-cards b{font-size:13px!important;line-height:1.5!important;overflow-wrap:anywhere}
html body #main .view-project .pp-visual-phase-cards small{grid-column:2!important;font-size:11px!important;line-height:1.5!important}
@media(max-width:699px){
 html body #main .view-project>.plan-project-work-header{gap:6px!important;margin-bottom:8px!important;padding:4px 0!important}
 html body #main .view-project .pp-visual-detail-cover:has(>img){grid-template-columns:72px minmax(0,1fr)!important}
 html body #main .view-project .pp-visual-detail-cover>img{width:72px!important;min-height:100px!important;max-height:130px!important}
 html body #main .view-project .pp-visual-detail-cover>div{padding:10px!important;gap:4px 6px!important}
 html body #main .view-project .pp-visual-detail-cover h2{font-size:15px!important}
 html body #main .view-project .pp-visual-detail-cover p{font-size:11px!important}
 html body #main .view-project .pp-visual-detail-cover .pp-project-card-actions{flex-direction:column;gap:0!important}
 html body #main .view-project .pp-visual-detail-cover .pp-project-card-actions>.icon-btn{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;padding:6px!important}
 html body #main .view-project .pp-visual-phase-cards{gap:6px!important}
 html body #main .view-project .pp-visual-phase-cards>button{min-height:82px!important}
 html body #main .view-project .pp-visual-phase-cards span{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto auto;gap:3px!important;padding:8px 4px!important;text-align:center;justify-items:center}
 html body #main .view-project .pp-visual-phase-cards svg{grid-row:auto;width:30px!important;height:30px!important}
 html body #main .view-project .pp-visual-phase-cards b{font-size:12px!important}.view-project .pp-visual-phase-cards small{font-size:10px!important}
 html body #main .view-project .pp-visual-phase-cards small{grid-column:1!important}
}
html body #main .view-project .pp-visual-detail-cover>.pp-cover-edit{top:6px!important;right:6px!important;left:auto!important;bottom:auto!important;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;padding:7px!important}
@media(max-width:699px){
 html body #main .view-project .pp-visual-detail-cover .pp-project-card-actions{grid-column:1 / -1;grid-row:4;flex-direction:row;justify-content:flex-end;gap:0!important}
 html body #main .view-project .pp-visual-detail-cover .pp-project-card-actions>.icon-btn{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:12px!important}
 html body #main .view-project .pp-visual-detail-cover>img{max-height:none!important}
 html body #main .view-project .pp-visual-detail-cover>.pp-cover-edit{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:12px!important}
}
html body #main .view-project .pp-visual-detail-cover .pp-visual-progress{display:flex!important;align-items:center!important;flex-wrap:wrap;gap:8px!important}
html body #main .view-project .pp-visual-detail-cover .pp-visual-progress>small{margin:0!important;line-height:1.5!important;white-space:nowrap}

/* Desktop sizing only. Keep phone controls and every existing preference handler. */
@media(min-width:700px){
 html body .modal.plan-display-sheet{display:flex!important;flex-direction:column;max-height:calc(100dvh - 40px)!important;overflow:hidden!important;font-size:13px!important}
 html body .modal.plan-display-sheet:has(.plan-display-form>fieldset:nth-of-type(2)),html body .modal.plan-display-sheet:has(.pp-mobile-card-options){width:min(680px,calc(100vw - 48px))!important;max-width:680px!important}
 html body .plan-display-sheet .modal-head{flex:none;padding:12px 16px!important;min-height:56px!important}
 html body .plan-display-sheet .modal-head h2{font-size:16px!important;line-height:1.6!important}
 html body .plan-display-sheet .modal-body{min-height:0;overflow-y:auto!important;overflow-x:hidden!important;padding:12px 16px 16px!important}
 html body .plan-display-sheet .plan-display-form:has(>fieldset:nth-of-type(2)),html body .plan-display-sheet .plan-display-form:has(>.pp-mobile-card-options){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
 html body .plan-display-sheet .pp-mobile-card-options{display:contents!important}
 html body .plan-display-sheet .plan-display-form fieldset{min-width:0;margin:0!important;padding:6px 12px 8px!important;border-radius:12px!important}
 html body .plan-display-sheet .plan-display-form legend{font-size:12px!important;line-height:1.6!important;font-weight:550!important;padding-inline:5px!important}
 html body .plan-display-sheet .plan-display-option{font-size:13px!important;line-height:1.6!important;min-height:34px!important;padding:6px 0!important;gap:8px!important;min-width:0}
 html body .plan-display-sheet .plan-display-option>span{min-width:0;overflow-wrap:anywhere;white-space:normal}
 html body .plan-display-sheet .plan-display-option input{width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;flex:0 0 16px!important;margin:0!important}
 html body .plan-display-sheet .pp-mobile-detail-options{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px}
 html body .plan-display-sheet .plan-display-hint{grid-column:1/-1;font-size:11px!important;margin:0!important;line-height:1.8!important}
 html body .plan-display-sheet .form-actions{grid-column:1/-1}
}
@media(min-width:700px){
 html body .plan-display-sheet .plan-display-option{margin:0!important}
 html body .plan-display-sheet fieldset:has(>label>input[name^="include."]){grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:12px}
}

/* Studio uses the app viewport; nested dialogs keep their existing size. */
html body #modalRoot>.modal-backdrop.pp-studio-page{
 padding:0!important;inset:0!important;top:var(--plan-visible-top,0px)!important;
 height:var(--plan-visible-height,100dvh)!important;overflow:hidden;
 display:flex;align-items:stretch;justify-content:stretch;
}
html body #modalRoot>.pp-studio-page>.modal.pp-studio{
 width:100%!important;max-width:100%!important;min-width:0!important;
 height:100%!important;max-height:100%!important;margin:0!important;padding:0!important;
 border:0!important;border-radius:0!important;transform:none!important;
 display:flex!important;flex-direction:column;overflow:hidden!important;
 background:var(--card)!important;
}
html body #modalRoot>.pp-studio-page>.pp-studio>.modal-head{
 display:flex!important;flex-direction:row-reverse;justify-content:space-between;
 gap:12px;position:relative;top:auto!important;margin:0!important;flex:none;min-width:0;
 padding:calc(12px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) 12px max(16px,env(safe-area-inset-left,0px))!important;
}
html body #modalRoot>.pp-studio-page>.pp-studio>.modal-head::before{display:none!important}
html body #modalRoot>.pp-studio-page>.pp-studio>.modal-head>div{min-width:0;text-align:end}
html body #modalRoot>.pp-studio-page>.pp-studio>.modal-head h2{font-size:18px!important;margin:0}
html body #modalRoot>.pp-studio-page>.pp-studio>.modal-head .modal-sub{font-size:12px!important;margin:4px 0 0;overflow-wrap:anywhere}
html body #modalRoot .pp-studio-page .pp-studio-back{
 display:grid;place-items:center;flex:none;width:40px!important;height:40px!important;
 min-height:40px;max-width:40px;padding:8px!important;border-radius:12px!important;
}
html body #modalRoot>.pp-studio-page>.pp-studio>.modal-body{
 flex:1;min-height:0;min-width:0;width:100%;overflow:auto!important;overscroll-behavior:contain;
 padding:16px max(16px,env(safe-area-inset-right,0px)) max(20px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))!important;
}
.pp-studio-page [data-rough-root]{max-width:1120px;margin-inline:auto;min-width:0}
/* Same control scale as project editing; full screen does not enlarge controls. */
html body #modalRoot .pp-studio-page .pp-studio-tabs{
 display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:660px;
 gap:6px;margin:0 0 12px;padding:0;background:var(--card);border-radius:0;
}
html body #modalRoot .pp-studio-page .pp-studio-tab{
 display:flex;flex-direction:row;justify-content:center;align-items:center;flex-wrap:wrap;
 min-height:44px;height:44px;gap:5px;padding:6px 10px!important;margin:0;
 font-size:13px!important;line-height:1.4;border-radius:10px!important;
}
html body #modalRoot .pp-studio-page .pp-studio-tab small{font-size:9px!important;line-height:1.2}
html body #modalRoot .pp-studio-page .pp-studio-tab .pp-studio-ico svg{width:18px;height:18px}
html body #modalRoot .pp-studio-page .pp-studio-strip{font-size:11px;gap:6px 12px;margin-bottom:12px}
html body #modalRoot .pp-studio-page .pp-rough-start,
html body #modalRoot .pp-studio-page .pp-rough-handoff{padding:14px!important;border-radius:12px!important}
html body #modalRoot .pp-studio-page .pp-rough-flow-inputs{
 grid-template-columns:minmax(220px,320px) minmax(240px,1fr);align-items:end;
 gap:12px 24px;margin:0 0 12px;
}
html body #modalRoot .pp-studio-page .pp-rough-method{grid-column:1;grid-row:1;gap:6px;font-size:12px!important;margin:0!important;padding:0!important}
html body #modalRoot .pp-studio-page .pp-rough-folder-control{
 grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:space-between;
 gap:12px;min-width:0;max-width:440px;
}
.pp-studio-page .pp-rough-folder-control>div{min-width:0;display:grid;gap:6px}
.pp-studio-page .pp-rough-folder-control small{font-size:12px;color:var(--muted)}
html body #modalRoot .pp-studio-page .pp-rough-root-name{display:block;font-size:13px;line-height:1.6;padding:0;overflow-wrap:anywhere}
html body #modalRoot .pp-studio-page :is(select,input:not([type=checkbox]):not([type=radio])){
 min-height:40px!important;height:40px;padding:7px 10px!important;font-size:13px!important;border-radius:10px!important;
}
html body #modalRoot .pp-studio-page .btn{
 min-height:36px!important;padding:7px 12px!important;font-size:12px!important;
 border-radius:10px!important;line-height:1.6;
}
html body #modalRoot .pp-studio-page .pp-rough-folder-control>.btn{flex:none;min-height:40px!important;white-space:nowrap}
html body #modalRoot .pp-studio-page .hint{font-size:12px!important;line-height:1.9;margin:8px 0}
html body #modalRoot .pp-studio-page .btn-row{gap:8px;margin:8px 0;padding:4px 0}
html body #modalRoot .pp-studio-page :is([role=status],[role=alert]){font-size:12px;line-height:1.8;margin:6px 0}
html body #modalRoot .pp-studio-page :is([role=status],[role=alert]):empty{display:none}
html body #modalRoot .pp-studio-page .pp-rough-advanced{margin:14px 0;padding-top:10px;font-size:12px}
html body #modalRoot .pp-studio-page .pp-rough-music{padding:0!important}
html body #modalRoot .pp-studio-page .pp-rough-music>h3{font-size:16px;margin:12px 0}
html body #modalRoot .pp-studio-page .pp-rough-music label{font-size:12px;margin:10px 0}
html body #modalRoot .pp-studio-page textarea{font-size:13px!important;border-radius:10px!important;line-height:1.8}
@media(max-width:699px){
 html body #modalRoot>.pp-studio-page>.pp-studio>.modal-head{gap:8px;padding-inline:12px!important}
 html body #modalRoot>.pp-studio-page>.pp-studio>.modal-head h2{font-size:16px!important}
 html body #modalRoot .pp-studio-page .pp-studio-back{width:44px!important;height:44px!important;min-height:44px;max-width:44px}
 html body #modalRoot>.pp-studio-page>.pp-studio>.modal-body{padding-inline:12px!important}
 html body #modalRoot .pp-studio-page .pp-studio-tab{font-size:12px!important;padding-inline:5px!important;height:48px;gap:4px}
 html body #modalRoot .pp-studio-page .pp-rough-flow-inputs{grid-template-columns:minmax(0,1fr);gap:12px}
 html body #modalRoot .pp-studio-page .pp-rough-folder-control{grid-column:1;grid-row:2;max-width:none}
 html body #modalRoot .pp-studio-page :is(select,input:not([type=checkbox]):not([type=radio])){font-size:16px!important;min-height:44px!important}
}

.pp-organization-status{flex-basis:100%;font-size:12px;line-height:1.9;margin:4px 0;overflow-wrap:anywhere}.pp-organization-status:empty{display:none}

/* Six Resolve-order pages; app typography and controls remain unchanged. */
html body #modalRoot .pp-studio-page .pp-studio-tabs{
 flex:none;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));direction:ltr;
 width:100%;max-width:none;margin:0;padding:8px max(16px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));
 border-top:1px solid var(--line);gap:4px;background:var(--card);border-radius:0;
}
html body #modalRoot .pp-studio-page .pp-studio-tab{
 flex-direction:row;flex-wrap:nowrap;gap:8px;min-width:0;height:54px;min-height:54px;
 padding:5px 8px!important;line-height:1.3;font-size:12px!important;background:transparent;border:0;
}
.pp-studio-page .pp-studio-tab>span:last-child{display:grid;gap:3px;min-width:0}
html body #modalRoot .pp-studio-page .pp-studio-tab small{font-size:10px!important;color:var(--muted);margin:0}
html body #modalRoot .pp-studio-page .pp-studio-tab.on{background:var(--soft);color:var(--primary);box-shadow:inset 0 -2px var(--primary)}
html body #modalRoot .pp-studio-page .pp-studio-tab:focus-visible{outline:2px solid var(--primary);outline-offset:0}
.pp-studio-page .pp-studio-tabs .pp-studio-ico{display:grid;place-items:center;flex:none}
html body #modalRoot .pp-studio-page .pp-studio-tabs svg{width:22px;height:22px}
.pp-studio-media-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:20px;align-items:start}
.pp-studio-media-grid>*{min-width:0}
.pp-studio-page .pp-studio-resource{padding:16px 0;border-bottom:1px solid var(--line);min-width:0}
.pp-studio-page .pp-studio-resource h3{font-size:14px;margin:0 0 12px;line-height:1.6}
.pp-studio-page .pp-work-resolve{margin:0 0 16px;padding:16px;min-width:0}
.pp-studio-page .pp-work-prepare{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.pp-studio-page .pp-work-prepare>small{width:100%}
.pp-studio-page .pp-work-details{margin:12px 0 0;min-width:0}
.pp-studio-page .pp-work-detail-body{min-width:0;padding-block:12px}
.pp-studio-page .pp-fe-install{display:flex;flex-wrap:wrap;gap:12px;padding:0;border:0;background:transparent}
.pp-studio-page .pp-fe-install>span{flex:1;min-width:180px;font-size:12px;line-height:1.9}
.pp-studio-page .pp-fe-install small{display:block;color:var(--muted)}
.pp-studio-page .pp-studio-deliver{max-width:900px;margin-inline:auto;min-width:0}
.pp-studio-page .pp-export-box{margin:0;min-width:0}
.pp-studio-page .pp-export-drop{min-height:140px}
.pp-studio-page .pp-export-item{min-width:0}
.pp-studio-page .pp-export-item .grow{min-width:0;overflow-wrap:anywhere}
.pp-studio-entry{margin-block:10px}
.pp-studio-entry>button{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;min-height:50px;border:0;background:transparent;color:inherit;text-align:start;font:inherit;cursor:pointer}
.pp-studio-entry>button>i{display:grid;place-items:center;color:var(--primary)}
.pp-studio-entry>button>b{font-size:14px}
.pp-studio-entry>button>span{font-size:11px;color:var(--muted);margin-inline-start:auto}
.pp-studio-entry>button>svg{width:18px;height:18px;color:var(--muted)}
.pp-edit-project-info .pp-edit-info-section{min-width:0;padding:14px 0;border-top:1px solid var(--line)}
.pp-edit-project-info .pp-edit-info-section>h3{font-size:13px;margin:0 0 10px}
.pp-edit-project-info .pp-work-detail-body{padding:0}
.pp-edit-project-info .pp-edit-summary{margin-block:12px}
@media(max-width:899px){.pp-studio-media-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:699px){
 html body #modalRoot .pp-studio-page .pp-studio-tabs{padding-inline:6px;gap:2px}
 html body #modalRoot .pp-studio-page .pp-studio-tab{flex-direction:column;height:58px;min-height:58px;gap:4px;font-size:9px!important;padding-inline:2px!important}
 html body #modalRoot .pp-studio-page .pp-studio-tab small{display:none}
 .pp-studio-entry>button>span{display:none}
}
.pp-studio-full-install{margin-top:16px;font-size:12px;line-height:1.8}
.pp-studio-full-install p{margin:4px 0 8px}
.pp-studio-project-steps{margin-top:24px;border-top:1px solid var(--line);padding-top:14px}
.pp-studio-project-steps>summary{cursor:pointer;font-size:13px;line-height:1.8}
.pp-studio-project-steps .pp-resolve-plan{margin-top:14px}
.pp-studio-entry>button>svg{margin-inline-start:auto}
.pp-edit-project-info>.pp-edit-mode{margin-bottom:12px}
@media(min-width:900px){
 .pp-edit-project-info{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:24px}
 .pp-edit-project-info>.pp-edit-mode,.pp-edit-project-info>.pp-edit-summary,.pp-edit-project-info>.pp-edit-manual,.pp-edit-project-info>.pp-manual-edit-plan,.pp-edit-project-info>.pp-edit-steps{grid-column:1/-1}
 .pp-edit-project-info>.pp-edit-info-section{margin-top:16px}
}
.pp-edit-project-info{row-gap:12px}
.pp-edit-project-info>.pp-edit-mode,.pp-edit-project-info>.pp-edit-summary,.pp-edit-project-info>.pp-edit-manual{margin-block:0}
.pp-edit-project-info>.pp-edit-info-section{margin-top:0;padding-top:12px}
.pp-edit-project-info .pp-duration input{min-height:40px}

.pp-studio-entry>button>i{width:30px;height:30px;flex:none;border-radius:9px}
.pp-studio-entry>button>i>img{display:block;width:30px;height:30px;object-fit:contain}
.pp-edit-project-info>.pp-resolve-plan{grid-column:1/-1;margin:8px 0}
.pp-studio-page [data-studio-media-resources]>.pp-rough-folder-control{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pp-studio-page [data-studio-media-resources] .pp-rough-root-name{display:block;font-size:12px;overflow-wrap:anywhere}
.pp-studio-page [data-studio-media-resources] .pp-rough-advanced{margin-top:16px}

.pp-studio-page [data-studio-media-resources] [data-rough-progress]:empty,.pp-studio-page [data-studio-media-resources] [data-rough-error]:empty{display:none}

.pp-studio-page .pp-studio-media-tools{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:6px;width:100%;margin-top:6px}
html body #modalRoot .pp-studio-page .pp-studio-tool{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:72px;padding:9px 4px!important;border:1px solid var(--line);border-radius:10px;background:var(--soft);color:var(--text);font:inherit;font-size:10px!important;line-height:1.55;text-align:center;cursor:pointer}
.pp-studio-page .pp-studio-tool svg{display:block;flex:none;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.pp-studio-page .pp-studio-tool span{font-size:10px!important;white-space:normal;overflow-wrap:anywhere;max-width:100%}
.pp-studio-page .pp-studio-tool:disabled{opacity:.45;cursor:default}
.pp-studio-page .pp-studio-tool:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.pp-studio-page [data-studio-media-resources]>.pp-rough-folder-control{justify-content:flex-start}
@media(max-width:899px){.pp-studio-page .pp-studio-media-tools{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr))}}

.pp-studio-project-folder{display:flex;align-items:center;flex-wrap:wrap;gap:12px;min-width:0;font-size:12px}
.pp-studio-project-folder>b{flex:none;font-size:12px}
html body #modalRoot .pp-studio-page .pp-studio-folder-path{display:flex;align-items:center;gap:8px;max-width:100%;min-width:0;padding:6px 0!important;min-height:32px;font-size:12px!important;border:0;background:transparent;color:var(--primary);text-align:start;cursor:pointer}
.pp-studio-folder-path bdi{min-width:0;overflow-wrap:anywhere;white-space:normal;direction:ltr}
.pp-studio-folder-path svg{flex:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.pp-studio-folder-path:disabled{opacity:.5;cursor:default}

.pp-studio-folder-links{display:grid;gap:2px;min-width:0;flex:1}

.pp-studio-music-provider{padding:12px 0;border-top:1px solid var(--line)}
.pp-studio-music-provider>summary{font-size:13px;font-weight:600;cursor:pointer}
.pp-studio-music-import{margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.pp-studio-music-import h4{font-size:13px;margin:0 0 10px}
.pp-studio-page [data-rough-music]{max-width:900px;margin-inline:auto}
html body #modalRoot .pp-studio-page [data-rough-music] .pp-music-copy textarea{height:160px!important;min-height:120px!important;max-height:220px!important;overflow-y:auto!important;resize:vertical;font-size:11px!important;line-height:1.65}

.pp-studio-remote-hint{font-size:11px!important;padding:8px 10px;margin:0 0 10px;border:1px solid var(--line);border-radius:8px}
@media(max-width:699px){.pp-studio-page .pp-work-resolve{padding:10px}.pp-studio-page .pp-studio-media-tools{grid-template-columns:repeat(3,minmax(0,1fr))}.pp-studio-page .pp-studio-tool{min-height:62px}.pp-studio-page input,.pp-studio-page select,.pp-studio-page textarea{max-width:100%;min-width:0}}


/* Resolve reference: compact page symbols above their labels, active red line. */
html body #modalRoot .pp-studio-page .pp-studio-tab{flex-direction:column;gap:3px;height:54px;min-height:54px;border-radius:0;color:var(--muted);font-size:11px!important}
html body #modalRoot .pp-studio-page .pp-studio-tab>span:last-child{gap:1px}
html body #modalRoot .pp-studio-page .pp-studio-tab small{font-size:9px!important}
html body #modalRoot .pp-studio-page .pp-studio-tab.on{background:transparent;color:var(--text);box-shadow:inset 0 -2px #ef363e}
html body #modalRoot .pp-studio-page .pp-studio-tabs svg{width:20px;height:20px;stroke-width:1.25}
.pp-studio-page .pp-studio-color-dots circle{fill:currentColor;stroke:none}
.pp-studio-page [data-rough-tab=music] ellipse{fill:currentColor;stroke:none}
.pp-studio-page .on .pp-studio-edit-cyan{stroke:#33c8dc}
.pp-studio-page .on .pp-studio-edit-green{stroke:#72c84d}
.pp-studio-page .on .pp-studio-edit-orange{stroke:#e1b955}
.pp-studio-page .on .pp-studio-edit-playhead{stroke:#ef4248}
.pp-studio-media-grid:not(:has(>aside)){grid-template-columns:minmax(0,1fr);max-width:1000px;margin-inline:auto}
.pp-studio-setup .btn.primary{display:flex;justify-content:center;margin-block:16px}
.pp-studio-setup [data-studio-setup-state]{min-height:2em}

/* Four clear Media actions; phone remote keeps two balanced columns. */
@media(max-width:899px){.pp-studio-page .pp-studio-media-tools{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* Explicit media ownership: source is the default, copy is a separate decision. */
.pp-studio-storage{margin-block:12px;padding:12px;border:1px solid var(--line,#36424e);border-radius:12px;text-align:start}.pp-studio-copy-choice{margin-block-start:12px;padding-block-start:12px;border-top:1px solid var(--line,#36424e)}.pp-studio-copy-choice bdi{display:block;overflow-wrap:anywhere;font-size:12px}.pp-studio-copy-choice .btn-row{gap:8px;flex-wrap:wrap}

/* Desktop navigation and the working page keep separate scroll positions. */
@media(min-width:900px){
 html body #app>.shell{height:100dvh;min-height:0;overflow:hidden}
 html body #app>.shell>.sidebar{position:relative!important;top:0!important;align-self:start;height:100dvh!important;min-height:0;overflow-y:auto!important;overscroll-behavior-y:contain;box-sizing:border-box}
 html body #app>.shell>#main{height:100dvh!important;min-height:0;overflow-y:auto!important;overflow-x:hidden;overscroll-behavior-y:contain;box-sizing:border-box}
}

/* Keep writing in front; secondary material stays one click away. */
html body .pp-idea-workspace{min-width:0;max-width:100%}
html body .pp-idea-workspace .pp-src-main{padding:12px!important;border:0!important;box-shadow:none!important;background:transparent!important}
html body .pp-idea-workspace .pp-src-label{font-size:14px;font-weight:550;margin:0 0 8px;display:block}
html body .pp-idea-workspace [data-pp-sp-idea]{min-height:160px!important;max-height:340px;line-height:1.9!important;padding:12px!important;border-radius:10px!important;font-size:14px!important;resize:vertical}
html body .pp-idea-actions{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 14px}
html body .pp-idea-workspace .btn{min-height:32px!important;font-size:12px!important;padding:6px 10px!important;border-radius:8px!important}
html body .pp-idea-workspace .pp-src-next{background:transparent!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:12px 0 0!important;margin:12px 0 0!important;box-shadow:none!important;display:flex;align-items:center;flex-wrap:wrap;gap:8px}
html body .pp-idea-workspace .pp-src-next b{font-size:13px!important;font-weight:550}
html body .pp-idea-workspace .pp-src-next p{font-size:12px!important;margin:3px 0!important}
html body .pp-idea-workspace :is(.pp-idea-brief,.pp-idea-resources){border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;margin:0!important;padding:0!important}
html body .pp-idea-workspace :is(.pp-idea-brief,.pp-idea-resources)>summary{cursor:pointer;padding:11px 0!important;font-size:13px;font-weight:500;color:var(--ink2)}
html body .pp-idea-workspace .pp-idea-summary{font-size:12px;line-height:1.8;color:var(--muted);white-space:pre-wrap;margin:0 0 12px}
html body .pp-idea-workspace .pp-project-brief{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important}
html body .pp-idea-workspace .pp-project-brief .plan-section-head{justify-content:flex-end;min-height:0!important;margin:0!important}
html body .pp-idea-workspace .pp-project-brief .field{margin:0 0 10px!important}
html body .pp-idea-workspace .pp-project-brief .field>label{font-size:12px!important;margin:0 0 5px!important}
html body .pp-idea-workspace .pp-project-brief textarea{min-height:70px!important;padding:9px!important;line-height:1.75!important;font-size:13px!important}
html body .pp-idea-workspace .pp-project-brief form{display:grid!important;grid-template-columns:1fr 1fr;gap:8px 12px!important}
html body .pp-idea-workspace .pp-project-brief form>[data-idea-record],html body .pp-idea-workspace .pp-project-brief form>.field:first-of-type,html body .pp-idea-workspace .pp-project-brief form>.attach,html body .pp-idea-workspace .pp-project-brief form>.hint,html body .pp-idea-workspace .pp-project-brief form>.plan-autosave{grid-column:1/-1}
html body .pp-idea-workspace .pp-project-brief form>[data-idea-record]{justify-self:start}
html body .pp-idea-workspace .plan-form-help{display:none!important}
html body .pp-idea-workspace .pp-refs,html body .pp-idea-workspace .pp-src-ideas>.card{padding:10px 0!important;border:0!important;background:transparent!important;box-shadow:none!important}
html body .pp-idea-workspace .pp-refs h2,html body .pp-idea-workspace .pp-src-ideas h2{font-size:13px!important}
html body .pp-idea-workspace .hint{font-size:12px!important;line-height:1.8!important}
html body .pp-phase-strips>[data-pt-part*="\:pre\:"]>summary{min-height:48px!important;padding:10px 12px!important;font-size:14px!important;gap:9px!important}
html body .pp-phase-strips>[data-pt-part*="\:pre\:"]>summary .pt-part-ic{width:30px!important;height:30px!important;border-radius:9px!important}
html body .pp-phase-strips>[data-pt-part*="\:pre\:"]>.pt-part-body{padding:10px 12px!important}
@media(max-width:600px){html body .pp-idea-workspace .pp-project-brief form{grid-template-columns:1fr}html body .pp-idea-workspace [data-pp-sp-idea]{min-height:150px!important}html body .pp-idea-workspace .pp-src-main{padding:4px!important}}
/* The native worker and its parent job are one operation, one progress bar. */
body[data-pp-job-running] #pp-studio-activity{display:none!important}
body[data-pp-job-running] [data-pp-run-note],body[data-pp-job-running] .pp-sp-status:has([data-pp-run-note]),body[data-pp-job-running] .pp-film-status:has([data-pp-run-note]){display:none!important}
html body #pp-tasks{display:block;z-index:2147482001;width:min(620px,calc(100vw - 24px));margin:auto;bottom:calc(84px + env(safe-area-inset-bottom))}
html body #pp-tasks[hidden]{display:none!important}
html body #pp-tasks .pp-task{box-sizing:border-box;max-width:none;width:100%;border-radius:14px;background:var(--card,#15171b);border:1px solid var(--line);padding:10px 14px;gap:12px;box-shadow:0 10px 30px #0003;direction:rtl;display:flex;align-items:center}
html body .pp-task>img{width:26px;height:26px;object-fit:contain;flex:none}
html body .pp-task-copy{flex:1;min-width:0}
html body .pp-task-copy b{display:block;font-size:13px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body .pp-task-copy small{display:block;font-size:12px;color:var(--muted)}
html body .pp-task-clock{font-size:11px;font-weight:400;color:var(--muted)}
html body .pp-task-cancel{flex:none;border:1px solid var(--line);background:var(--bg2);color:var(--ink);border-radius:9px;padding:6px 12px;font-size:12px}
.pp-task-line{height:3px;border-radius:3px;background:var(--line);overflow:hidden;margin-top:5px}.pp-task-line i{display:block;width:32%;height:100%;background:var(--primary);animation:pp-task-progress 1.8s ease-in-out infinite alternate}@keyframes pp-task-progress{to{transform:translateX(-210%)}}@media(prefers-reduced-motion:reduce){.pp-task-line i{animation:none}}

html body .pp-idea-context{font-size:12px!important;line-height:1.8;color:var(--muted);margin:0 0 9px!important;max-width:75ch}

html body .pp-phase-direct-tools:empty{display:none!important}
html body .pp-phase-strips:has(>[data-pt-part*=":pre:"]){gap:9px!important}
html body .pp-phase-strips>[data-pt-part*=":pre:"]>summary>i:first-child{width:30px!important;height:30px!important;border-radius:8px!important}
html body .pp-phase-strips>[data-pt-part*=":pre:"]>summary>i:first-child svg{width:18px!important;height:18px!important}
html body .view-project:has(.pp-phase-strips>[data-pt-part*=":pre:"])>.plan-fin-main-header{min-height:0!important;padding:8px 0!important;margin-bottom:8px!important}
html body .view-project:has(.pp-phase-strips>[data-pt-part*=":pre:"]) .pp-film-dur{padding:8px 10px!important;gap:8px!important;margin:0 0 8px!important}
html body .view-project:has(.pp-phase-strips>[data-pt-part*=":pre:"]) .pp-film-dur small{font-size:11px!important}
html body .view-project:has(.pp-phase-strips>[data-pt-part*=":pre:"]) .pp-film-dur label{min-width:0;max-width:100%;display:flex;align-items:center;gap:8px}
html body .view-project:has(.pp-phase-strips>[data-pt-part*=":pre:"]) .pp-film-dur input{width:84px!important;max-width:100%!important;min-width:0!important;flex:0 1 84px}
html body .pp-idea-context{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:600px){html body .view-project:has(.pp-phase-strips>[data-pt-part*=":pre:"]) .pp-film-dur{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center}html body .view-project:has(.pp-phase-strips>[data-pt-part*=":pre:"]) .pp-film-dur small{display:none!important}html body .pp-film-dur>[data-story-shortcut]{font-size:11px!important;padding:7px!important;max-width:155px;min-height:32px}}
html body .view-project:has(.pp-phase-strips>[data-pt-part*=":pre:"]) .plan-project-work-header{gap:8px!important;padding:4px 0!important;flex-wrap:nowrap!important;min-height:0!important}
html body .view-project:has(.pp-phase-strips>[data-pt-part*=":pre:"]) .plan-project-work-tools{display:flex!important;flex-wrap:nowrap!important;align-items:center;gap:6px!important;width:auto!important;max-width:100%;flex:0 0 auto}
html body .view-project:has(.pp-phase-strips>[data-pt-part*=":pre:"]) .plan-project-work-tools>.btn{min-height:32px!important;font-size:12px!important;padding:6px 8px!important}
html body .view-project:has(.pp-phase-strips>[data-pt-part*=":pre:"]) .plan-project-work-tools>.icon-btn{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;padding:7px!important}
html body .view-project:has(.pp-phase-strips>[data-pt-part*=":pre:"]) .plan-project-progress-strip{min-width:0;font-size:11px}
body[data-pp-job-running] .pp-run:has([data-pp-run-note]),body[data-pp-job-running] .pp-run:has([data-pp-run-note])+.pp-cancel{display:none!important}

/* Desktop: the page scrolls inside #main, whose top padding already clears the fixed top bar, so the page
   headers (goals, projects, accounting…) stick at the top of #main instead of a second bar-height lower. */
@media(min-width:900px){
 html.pp-fixed-chrome body #app>.shell>#main :is(.view-production,.view-goals,.view-money)>.pt-sticky{top:0px!important}
 html.pt-glass body #app>.shell>#main .pp-glass-sticky{top:8px!important}
 html.pt-glass.pp-activities-page body #app>.shell>#main .pp-activities-header{top:8px!important}
}

/* One header for every page (Mac and phone), measured on «پروژه‌ها» and «هدف‌ها»:
   [menu ≡ 44×44, no frame] · title centred · [page action 44×44, no frame].
   Inside a project the back button is the goals page one (40×40, framed) in the same corner as there,
   and the project menu takes the other corner. */
html body #main .view .plan-navigation-header:has(>.plan-navigation-menu-button):not(:has(>:nth-child(4))){display:grid!important;grid-template-columns:44px minmax(0,1fr) 44px!important;align-items:center!important;column-gap:12px!important}
html body #main .view .plan-navigation-header:has(>.plan-navigation-menu-button):not(:has(>:nth-child(4)))>div{grid-column:2;grid-row:1;min-width:0;text-align:center}
html body #main .view .plan-navigation-header:has(>.plan-navigation-menu-button):not(:has(>:nth-child(4)))>.plan-navigation-menu-button{grid-column:1;grid-row:1}
html body #main .view .plan-navigation-header:has(>.plan-navigation-menu-button):not(:has(>:nth-child(4)))>button:not(.plan-navigation-menu-button){grid-column:3;grid-row:1}
html body #main .view .plan-navigation-header:has(>.pp-head-back)>.pp-head-back{grid-column:1!important}
html body #main .view .plan-navigation-header:has(>.pp-head-back)>.plan-navigation-menu-button{grid-column:3!important}
html body #main .plan-navigation-header>.plan-navigation-menu-button,
html body #main .plan-navigation-header>.pp-visual-library-options,
html body #main .plan-navigation-header>button:has(>svg.i-dots),
html body #main .view>.plan-navigation-header>button.icon-btn:not(.pp-head-back):not(.plan-sheet-back),html body #main .view .pt-sticky>.plan-navigation-header>button.icon-btn:not(.pp-head-back):not(.plan-sheet-back){align-self:start!important;justify-self:center!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:10px!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border-radius:10px!important;color:var(--ink2)!important}
html body #main .plan-navigation-header>.plan-navigation-menu-button:hover,html body #main .plan-navigation-header>.pp-visual-library-options:hover{background:color-mix(in srgb,currentColor 8%,transparent)!important}
html body #main .plan-navigation-header>.pp-head-back{align-self:start!important;justify-self:center!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;max-width:40px!important;max-height:40px!important;flex:0 0 40px!important;padding:0!important;margin:2px 0 0!important;display:grid!important;place-items:center!important;border:1px solid var(--line)!important;border-radius:10px!important;background:var(--card)!important;color:var(--ink2)!important;box-shadow:none!important}
html body #main .plan-navigation-header>.pp-head-back .ic{width:20px!important;height:20px!important}
html body #main .plan-navigation-header h1{margin:0}
/* The project's tool row: one size, no frames (the header back replaces its own small back button). */
html body #main .plan-project-work-tools .btn.icon-btn{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;margin:0!important;display:inline-grid!important;place-items:center!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:10px!important;color:var(--ink2)!important}
html body #main .plan-project-work-tools .btn.icon-btn:hover{background:color-mix(in srgb,currentColor 8%,transparent)!important}
html body #main .plan-project-work-tools .btn.icon-btn .ic{width:19px!important;height:19px!important}
html body #main .plan-project-work-tools .btn.icon-btn.pp-overview-back{display:none!important}

/* Structural surfaces stay opaque while pages and background updates are painted. */
html.pp-render-pass #app,html.pp-render-pass #app *,html.pp-render-pass body>.pp-fixed-header,html.pp-render-pass body>.m-tabs,html.pp-render-pass body>.plan-global-timer{animation:none!important;transition:none!important;scroll-behavior:auto!important}
#app>.shell,#main,#main>.view,body>.pp-fixed-header,body>.m-tabs{animation:none!important;transition:none!important}
@media(min-width:761px){#main{scrollbar-gutter:stable}}
/* Reopening a dialog must not fade its entire contents in from transparent. */
#modalRoot .modal{animation:none!important}

/* Desktop owns one actual content viewport, including the 761–899px native-window range. */
html.pp-desktop-frame,html.pp-desktop-frame body{height:var(--pp-frame-height,100dvh)!important;min-height:0!important;overflow:hidden!important;box-sizing:border-box}
html.pp-desktop-frame body #app{height:100%;min-height:0;overflow:hidden}
html.pp-desktop-frame body #app>.shell{height:100%!important;min-height:0!important;max-height:100%;overflow:hidden;box-sizing:border-box}
html.pp-desktop-frame body #app>.shell>.sidebar{height:100%!important;max-height:100%;min-height:0;overflow-y:auto!important;box-sizing:border-box}
html.pp-desktop-frame body #app>.shell>#main{height:100%!important;max-height:100%!important;min-height:0!important;min-width:0;margin-block:0!important;box-sizing:border-box;overflow-y:auto!important;overflow-x:hidden;scrollbar-gutter:stable;padding-block-end:max(var(--space-4,16px),var(--pp-bottom-obstruction,0px),env(safe-area-inset-bottom,0px))!important;scroll-padding-block-end:var(--pp-bottom-obstruction,0px)}
html.pp-desktop-frame body #main>.view{min-width:0}
html.pp-desktop-frame body #main.pp-activities-main>.view{min-height:0!important}
html body #modalRoot .modal-body{min-height:0;min-width:0;box-sizing:border-box}
html body #modalRoot>.modal-backdrop{max-height:var(--plan-visible-height,100dvh)}
html body #modalRoot .pp-studio-page .pp-studio-tabs{flex-shrink:0}
@media print{html.pp-desktop-frame,html.pp-desktop-frame body,html.pp-desktop-frame body #app,html.pp-desktop-frame body #app>.shell,html.pp-desktop-frame body #app>.shell>#main{height:auto!important;max-height:none!important;overflow:visible!important}}
/* A calendar has one timeline scrollport. Fill the content box rather than
   calculating a second viewport height that ignores real chrome/obstructions. */
html body #app>.shell>#main:has(>.view-workCalendar){display:flex!important;flex-direction:column}
html body #main>.view-workCalendar{display:flex!important;flex:1;min-height:0!important;margin-block:0}
html body .view-workCalendar>.pp-calendar{display:flex;flex-direction:column;flex:1;min-height:0;width:100%}
html body .pp-calendar>:is(header,nav){flex-shrink:0}
html body .pp-calendar-all{flex:0 1 auto;min-height:0;max-height:35%;overflow:auto}
html body .pp-calendar-scroll{flex:1 1 0;height:auto!important;min-height:0!important}
/* When fixed day tools would leave no room for even one real activity row,
   let that group scroll in normal reading order instead of enlarging main's padding. */
html.pp-flow-daily body #app>.shell>#main{display:flex!important;flex-direction:column}
html.pp-desktop-frame.pp-flow-daily body #app>.shell>#main{padding-top:calc(var(--pp-chrome-height,64px) + var(--pp-active-timer-height,0px))!important}
html.pp-flow-daily:not(.pp-desktop-frame) body #app>.shell>#main{padding-top:0!important}
html.pp-flow-daily body #main>.pp-fixed-daily-host{position:relative!important;inset:auto!important;order:-1;flex:none;width:100%!important;max-width:100%;margin-block:0 var(--space-3);box-sizing:border-box}
html.pp-flow-daily body #main>.view-today{flex:none;min-height:0!important}

/* Today and Daily Plans reuse the same text and spacing scale as project/goal pages. */
html body :is(.view-today,.view-actions,.pp-fixed-daily-host,.pp-calendar){font-size:var(--text-body);line-height:1.7;min-width:0}
html body :is(.view-today,.view-actions,.pp-fixed-daily-host,.pp-calendar) .plan-week-strip{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:var(--space-2)!important;margin-block:var(--space-2)!important;padding-block:var(--space-1)!important;min-width:0}
html body :is(.view-today,.view-actions,.pp-fixed-daily-host,.pp-calendar) .plan-week-strip>button{min-width:0!important;min-height:56px!important;height:auto!important;gap:var(--space-1)!important;padding:var(--space-1)!important;border-radius:var(--radius-control)!important;line-height:1.4}
html body :is(.view-today,.view-actions,.pp-fixed-daily-host,.pp-calendar) .plan-week-strip>button small{font-size:var(--text-caption)!important;white-space:nowrap}
html body :is(.view-today,.view-actions,.pp-fixed-daily-host,.pp-calendar) .plan-week-strip>button b{font-size:var(--text-body)!important;font-weight:var(--weight-label)!important}
html body :is(.view-today,.view-actions,.pp-fixed-daily-host,.pp-calendar) .plan-menu-calendar{font-size:var(--text-section-title)!important;line-height:1.6;min-width:0;white-space:normal}
html body :is(.view-today,.view-actions,.pp-fixed-daily-host) .plan-review-buttons{gap:var(--space-2)!important;margin-block:var(--space-2)!important}
html body :is(.view-today,.view-actions,.pp-fixed-daily-host) .plan-review-buttons>button{min-height:40px!important;padding:var(--space-2) var(--space-3)!important;font-size:var(--text-label)!important;line-height:1.6;border-radius:var(--radius-control)!important}
html body :is(.view-today,.view-actions) :is(.plan-display-group-head,.plan-hub-section-title){font-size:var(--text-label)!important;padding-block:var(--space-2)!important}
html body :is(.view-today,.view-actions) :is(.plan-item-title,.plan-activity-title,.pp-mobile-activity .plan-item-main>b){font-size:var(--text-body)!important;line-height:1.7!important}
html body .pp-calendar-date-strip{gap:var(--space-2);margin-block:var(--space-2) var(--space-3)}
html body .pp-calendar-date-strip :is(b,small){font-size:var(--text-label)}
html body .pp-calendar-bar{font-size:var(--text-meta);line-height:1.6;min-width:0;overflow-wrap:anywhere}
html body .pp-calendar-hour time{font-size:var(--text-caption);font-variant-numeric:tabular-nums}
@media(max-width:760px){html body :is(.view-today,.view-actions,.pp-fixed-daily-host,.pp-calendar) .plan-week-strip{gap:var(--space-1)!important}html body .plan-today-menu-header{gap:var(--space-1)!important;min-width:0}}

/* Optional technical view: same app scale, paired frames on desktop and stacked on a phone. */
.pp-design-toggle{display:inline-flex;align-items:center;gap:var(--space-2,8px);font-size:var(--text-label,13px);line-height:1.7;cursor:pointer;min-height:36px;margin:0}
.pp-design-toggle input{accent-color:var(--primary);width:18px;height:18px;margin:0;flex:none}
html body .sb-grid:has(>.pp-has-design){grid-template-columns:minmax(0,1fr)!important}
html body .sb-grid>.pp-has-design{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:var(--space-3,12px);padding:var(--space-3,12px);min-width:0}
html body .pp-has-design>.sb-img{grid-column:1;grid-row:1;min-width:0;width:100%}
html body .pp-has-design>.sb-cap{grid-column:1/-1;grid-row:2;min-width:0;width:100%;text-align:start}
html body .pp-has-design>.pp-shot-design{grid-column:2;grid-row:1}
html body .sb-grid:has(>.pp-has-design)>.sb-add{min-height:44px}
.pp-shot-design{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-control,12px);background:var(--card);padding:var(--space-2,8px)}
.pp-shot-design>header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2,8px);margin-bottom:var(--space-2,8px)}
.pp-shot-design>header b{font-size:var(--text-label,13px);font-weight:var(--weight-label,550)}
.pp-design-svg{display:block;width:100%;height:auto;aspect-ratio:420/300;border-radius:8px;direction:ltr;isolation:isolate;font-family:Tahoma,sans-serif}
.pp-design-key{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:var(--text-caption,11px);line-height:1.7;margin-block:var(--space-2,8px);color:var(--muted);overflow-wrap:anywhere}
.pp-design-key b{font-size:inherit;font-weight:650;color:var(--ink);font-variant-numeric:tabular-nums}
.pp-shot-design>.hint{font-size:var(--text-caption,11px);margin:4px 0 0;line-height:1.7}
html body #modalRoot .pp-design-editor{width:min(1000px,calc(100vw - 32px));max-width:1000px}
.pp-design-workspace{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:var(--space-4,16px);align-items:start;min-width:0}
.pp-design-workspace>*{min-width:0}
.pp-design-properties{display:grid;gap:var(--space-2,8px)}
.pp-design-properties .field{margin:0;min-width:0}
.pp-design-properties .btn-row{align-items:end;gap:var(--space-2,8px);margin:0}
.pp-design-properties .grow{flex:1;min-width:0}
.pp-design-properties :is(select,input,textarea){width:100%;box-sizing:border-box;font-size:var(--text-label,13px)}
.pp-design-coordinates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2,8px);margin-top:var(--space-2,8px)}
.pp-design-coordinates input{direction:ltr;text-align:center;font-variant-numeric:tabular-nums}
.pp-design-precise{font-size:var(--text-label,13px);line-height:1.7;padding-block:var(--space-2,8px)}
.pp-design-stage .pp-design-svg{touch-action:none;user-select:none;-webkit-user-select:none;border:1px solid var(--line)}
.pp-design-stage [data-design-item]{cursor:grab;outline:none}
.pp-design-stage [data-design-item]:active{cursor:grabbing}
.pp-design-stage [data-design-item]:is(.is-selected,:focus-visible)>circle:first-child{stroke:#356c83;stroke-width:2;stroke-dasharray:3 3}
.pp-design-actions{gap:var(--space-2,8px);flex-wrap:wrap;align-items:center;margin-top:var(--space-3,12px)}
.pp-design-actions .grow{flex:1}
@media(max-width:760px){
 html body .sb-grid>.pp-has-design{grid-template-columns:minmax(0,1fr);padding:var(--space-2,8px)}
 html body .pp-has-design>.pp-shot-design{grid-column:1;grid-row:3}
 html body #modalRoot .pp-design-editor>.modal-head{padding:12px!important;min-height:56px!important}
 html body #modalRoot .pp-design-editor>.modal-head h2{font-size:16px!important}
 html body #modalRoot .pp-design-editor>.modal-body{padding:12px!important}
 .pp-design-workspace{grid-template-columns:minmax(0,1fr)}
 .pp-design-properties{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pp-design-properties>:is(.btn-row,.pp-design-precise,.pp-design-toggle),.pp-design-properties>.field:last-child{grid-column:1/-1}
 .pp-design-toggle{min-height:44px}
 .pp-design-properties :is(select,input,textarea){min-height:44px;font-size:16px}
 html body #modalRoot .pp-design-editor{width:100%;max-width:100%}
}
@media print{.pp-shot-design>header button,.pp-design-toggle{display:none!important}}

.pp-design-advice{font-size:var(--text-caption,11px);line-height:1.9;color:var(--muted)}
.pp-design-advice p{margin:6px 0;overflow-wrap:anywhere}
.pp-design-properties>.field:has([data-design-lighting]){grid-column:1/-1}

/* Final harmony pass: shared tokens, explicit contextual density, no workflow changes. */
html.plan-usability-ui.plan-refined-product body .pp-fixed-daily-host .plan-review-buttons>button{height:auto!important;min-height:40px!important;padding:var(--space-2) var(--space-3)!important;font-size:var(--text-label)!important;border-radius:var(--radius-control)!important}
html body .pp-story-format{min-width:0;margin:var(--space-3) 0;padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-control)}
html body .pp-story-format legend{font-size:var(--text-label);font-weight:var(--weight-label);padding-inline:var(--space-1)}
html body .pp-story-format .field{min-width:0;margin-block:var(--space-1)}
html body .pp-story-format [data-story-dimensions]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}
html body .pp-story-format [hidden]{display:none!important}
html body .pp-story-format input{direction:ltr;text-align:start;font-variant-numeric:tabular-nums}
html body .plan-tour-coach{font-size:var(--text-body);line-height:1.7;max-height:calc(var(--pp-frame-height,100dvh) - var(--space-4)*2);overflow-y:auto;overscroll-behavior:contain;border-radius:var(--radius-card)}
html body .plan-tour-coach h2{font-size:var(--text-section-title);line-height:1.7}
html body .plan-tour-coach .btn{font-size:var(--text-label);min-height:40px}
html body .plan-work-drawer{max-width:calc(100vw - var(--space-4));font-size:var(--text-body)}
html body .plan-work-drawer :is(button,a){font-size:var(--text-label);line-height:1.7}
html body #main:focus-visible{outline:var(--focus-ring-width,2px) solid var(--primary);outline-offset:-2px}
/* A global update prompt must not cover a dialog's navigation or the education coach. */
body:has(#modalRoot .modal) #pp-studio-update,body:has(.plan-guided-tour) #pp-studio-update{display:none!important}
@media(max-width:760px){
 html.plan-usability-ui.plan-refined-product body .pp-fixed-daily-host .plan-review-buttons>button,
 html body .plan-tour-coach .btn,
 html body .pp-story-format select,
 html body .pp-story-format input{min-height:44px!important}
 html body .plan-tour-coach{font-size:var(--text-body);max-width:calc(100vw - var(--space-4)*2)}
 html body .pp-story-format{padding:var(--space-2)}
}
/* Update notices stay dismissible without covering the fixed navigation/header. */
html body #pp-studio-update{top:auto!important;bottom:var(--space-4)!important;max-width:calc(100vw - var(--space-4)*2);max-height:40dvh;overflow-y:auto}
html body #modalRoot>.pp-studio-page>.pp-studio>.modal-head>div{flex:1;min-width:0}
html body #modalRoot>.pp-studio-page>.pp-studio>.modal-head .modal-sub{white-space:normal!important;overflow-wrap:anywhere;line-height:1.7}

/* Optional technical view: same app scale, paired frames on desktop and stacked on a phone. */
.pp-design-toggle{display:inline-flex;align-items:center;gap:var(--space-2,8px);font-size:var(--text-label,13px);line-height:1.7;cursor:pointer;min-height:36px;margin:0}
.pp-design-toggle input{accent-color:var(--primary);width:18px;height:18px;margin:0;flex:none}
html body .sb-grid:has(>.pp-has-design){grid-template-columns:minmax(0,1fr)!important}
html body .sb-grid>.pp-has-design{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:var(--space-3,12px);padding:var(--space-3,12px);min-width:0}
html body .pp-has-design>.sb-img{grid-column:1;grid-row:1;min-width:0;width:100%}
html body .pp-has-design>.sb-cap{grid-column:1/-1;grid-row:2;min-width:0;width:100%;text-align:start}
html body .pp-has-design>.pp-shot-design{grid-column:2;grid-row:1}
html body .sb-grid:has(>.pp-has-design)>.sb-add{min-height:44px}
.pp-shot-design{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-control,12px);background:var(--card);padding:var(--space-2,8px)}
.pp-shot-design>header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2,8px);margin-bottom:var(--space-2,8px)}
.pp-shot-design>header b{font-size:var(--text-label,13px);font-weight:var(--weight-label,550)}
.pp-design-svg{display:block;width:100%;height:auto;aspect-ratio:420/300;border-radius:8px;direction:ltr;isolation:isolate;font-family:Tahoma,sans-serif}
.pp-design-key{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:var(--text-caption,11px);line-height:1.7;margin-block:var(--space-2,8px);color:var(--muted);overflow-wrap:anywhere}
.pp-design-key b{font-size:inherit;font-weight:650;color:var(--ink);font-variant-numeric:tabular-nums}
.pp-shot-design>.hint{font-size:var(--text-caption,11px);margin:4px 0 0;line-height:1.7}
html body #modalRoot .pp-design-editor{width:min(1000px,calc(100vw - 32px));max-width:1000px}
.pp-design-workspace{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:var(--space-4,16px);align-items:start;min-width:0}
.pp-design-workspace>*{min-width:0}
.pp-design-properties{display:grid;gap:var(--space-2,8px)}
.pp-design-properties .field{margin:0;min-width:0}
.pp-design-properties .btn-row{align-items:end;gap:var(--space-2,8px);margin:0}
.pp-design-properties .grow{flex:1;min-width:0}
.pp-design-properties :is(select,input,textarea){width:100%;box-sizing:border-box;font-size:var(--text-label,13px)}
.pp-design-coordinates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2,8px);margin-top:var(--space-2,8px)}
.pp-design-coordinates input{direction:ltr;text-align:center;font-variant-numeric:tabular-nums}
.pp-design-precise{font-size:var(--text-label,13px);line-height:1.7;padding-block:var(--space-2,8px)}
.pp-design-stage .pp-design-svg{touch-action:none;user-select:none;-webkit-user-select:none;border:1px solid var(--line)}
.pp-design-stage [data-design-item]{cursor:grab;outline:none}
.pp-design-stage [data-design-item]:active{cursor:grabbing}
.pp-design-stage [data-design-item]:is(.is-selected,:focus-visible)>circle:first-child{stroke:#356c83;stroke-width:2;stroke-dasharray:3 3}
.pp-design-actions{gap:var(--space-2,8px);flex-wrap:wrap;align-items:center;margin-top:var(--space-3,12px)}
.pp-design-actions .grow{flex:1}
@media(max-width:760px){
 html body .sb-grid>.pp-has-design{grid-template-columns:minmax(0,1fr);padding:var(--space-2,8px)}
 html body .pp-has-design>.pp-shot-design{grid-column:1;grid-row:3}
 html body #modalRoot .pp-design-editor>.modal-head{padding:12px!important;min-height:56px!important}
 html body #modalRoot .pp-design-editor>.modal-head h2{font-size:16px!important}
 html body #modalRoot .pp-design-editor>.modal-body{padding:12px!important}
 .pp-design-workspace{grid-template-columns:minmax(0,1fr)}
 .pp-design-properties{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pp-design-properties>:is(.btn-row,.pp-design-precise,.pp-design-toggle),.pp-design-properties>.field:last-child{grid-column:1/-1}
 .pp-design-toggle{min-height:44px}
 .pp-design-properties :is(select,input,textarea){min-height:44px;font-size:16px}
 html body #modalRoot .pp-design-editor{width:100%;max-width:100%}
}
@media print{.pp-shot-design>header button,.pp-design-toggle{display:none!important}}

.pp-design-advice{font-size:var(--text-caption,11px);line-height:1.9;color:var(--muted)}
.pp-design-advice p{margin:6px 0;overflow-wrap:anywhere}
.pp-design-properties>.field:has([data-design-lighting]){grid-column:1/-1}
/* Each storyboard and its blocking diagram share a header and visual baseline. */
html body .sb-grid>.pp-has-design{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
html body .pp-has-design>.pp-board-story{grid-column:1;grid-row:1;min-width:0;border:1px solid var(--line);border-radius:var(--radius-control,12px);background:var(--card);padding:var(--space-2,8px);overflow:hidden}
html body .pp-has-design>.pp-shot-design{grid-column:2;grid-row:1;margin:0}
.pp-board-story>header,.pp-shot-design>header{height:36px;min-height:36px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;margin:0 0 8px;gap:4px}
.pp-board-story>header b,.pp-shot-design>header b{font-size:var(--text-label,13px);line-height:1.5}
html body .pp-board-story>.sb-img{width:100%;aspect-ratio:var(--pp-pair-ratio,16/9);height:auto;min-height:0;background-size:contain;background-repeat:no-repeat;background-position:center}
html body .pp-board-story>.sb-cap{display:block;width:100%;height:auto;text-align:start;white-space:normal;overflow-wrap:anywhere;line-height:1.85;margin:8px 0 0}
html body .pp-board-story>.sb-cap small{display:block;margin-block-end:6px;line-height:1.65}
html body .pp-has-design .pp-design-svg{width:100%;height:auto;aspect-ratio:var(--pp-pair-ratio,16/9);background:#f8f8f5}
.pp-design-notes{margin-block:8px;font-size:var(--text-caption,12px);line-height:1.8}
.pp-design-notes>summary{cursor:pointer;color:var(--muted);padding-block:4px}
@media(max-width:480px){
 html body .sb-grid>.pp-has-design{gap:6px;padding:6px}
 html body .pp-has-design>.pp-board-story,html body .pp-has-design>.pp-shot-design{padding:5px}
 .pp-board-story>header b,.pp-shot-design>header b{font-size:11px}
 .pp-shot-design>header .icon-btn{width:28px;min-width:28px;height:28px;min-height:28px}
 html body .pp-board-story>.sb-cap{font-size:12px}
}
@media print{html body .sb-grid>.pp-has-design{break-inside:avoid}.pp-design-notes{display:block}}
