/* Punktik 0.9.5: mobile-first personal screens. Existing finance logic untouched. */
:root{--p95-purple:#7631e6;--p95-deep:#172450;--p95-muted:#697493;--p95-bg:#f6f7ff;--p95-border:#e5e6f5}
body.ux093{background:linear-gradient(155deg,#f6f7ff,#f4f6fd);color:var(--p95-deep)}
.ux093 .ux-brand-symbol{width:42px;height:42px;overflow:hidden;background:#eeeaff;border-radius:11px}
.ux093 .ux-brand-symbol img{object-fit:cover;width:100%;height:100%;display:block}
.ux093 .ux-bottom-nav .p95-bottom-active{color:var(--p95-purple)!important;font-weight:800}
.ux093 .ux-top .p94-icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.ux093 .ux-mobile-menu .ux-menu-label{margin-top:6px}
.ux093 .p95-page{font-size:15px;max-width:1140px;margin:12px auto 34px;min-width:0}
.ux093 .p95-panel{border:1px solid var(--p95-border);border-radius:25px;background:white;box-shadow:0 12px 30px #33345c0c}
.ux093 .p95-head h1,.ux093 .p95-heading{font-size:clamp(24px,3vw,36px);line-height:1.15;letter-spacing:-.03em;color:#14204a;margin:0}
.ux093 .p95-head p{font-size:14px;color:var(--p95-muted);margin:8px 0 0}
.ux093 .p95-heading{margin:25px 0 16px}
.ux093 .p95-eyebrow{text-transform:uppercase;letter-spacing:.09em;color:#6b4ab3;font-size:11px;font-weight:800}
.ux093 .p95-welcome{padding:22px 26px;display:flex;justify-content:space-between;gap:12px;align-items:center;background:linear-gradient(120deg,#fff,#f4edff)}
.ux093 .p95-welcome h1{font-size:clamp(25px,4vw,36px);margin:8px 0 6px;color:var(--p95-deep)}
.ux093 .p95-welcome p{color:var(--p95-muted);margin:0}
.ux093 .p95-welcome-icon{width:100px;height:84px;object-fit:contain;border-radius:17px}
.ux093 .p95-next{margin-top:15px;padding:19px 24px}
.ux093 .p95-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.ux093 .p95-section-heading h2{margin:0;font-size:19px;color:var(--p95-deep)}
.ux093 .p95-section-heading a{font-size:13px;font-weight:700;text-decoration:none}
.ux093 .p95-next-list{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.ux093 .p95-next-item{display:flex;align-items:center;gap:11px;text-decoration:none;flex:1 1 170px;min-width:0;border-radius:14px;border:1px solid #eceaf7;padding:8px;color:#18254f!important}
.ux093 .p95-next-item time{display:flex;flex-direction:column;text-align:center;min-width:48px;background:#f1efff;border-radius:12px;padding:8px 4px}
.ux093 .p95-next-item time strong{font-size:18px}.ux093 .p95-next-item time small{font-size:11px}
.ux093 .p95-next-item>span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:2px;font-size:14px}
.ux093 .p95-next-item>span:nth-child(2) small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px}
.ux093 .p95-monthcount{display:flex;align-items:center;gap:7px;color:var(--p95-muted);font-size:12px;padding:5px 10px}
.ux093 .p95-monthcount strong{font-size:28px;color:var(--p95-deep)}
.ux093 .p95-home-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:12px}
.ux093 .p95-tile{display:flex;align-items:center;gap:15px;min-width:0;background:white;border-radius:21px;border:1px solid #e7e6f5;padding:15px;box-shadow:0 6px 24px #22246a0d;text-decoration:none!important;color:var(--p95-deep)!important;min-height:94px}
.ux093 .p95-tile:hover{border-color:#bca6eb;box-shadow:0 7px 24px #6d36dc1a;transform:translateY(-1px)}
.ux093 .p95-tile>span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.ux093 .p95-tile strong{font-size:17px}.ux093 .p95-tile small{font-size:13px;line-height:1.35;color:var(--p95-muted)}
.ux093 .p95-icon-tile{flex:none;display:grid;place-items:center;width:64px;height:64px;border-radius:19px;color:#733fe0}
.ux093 .p95-icon-tile .p94-icon{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.8}
.ux093 .p95-lilac{background:linear-gradient(145deg,#eee5ff,#f8f4ff)}.ux093 .p95-yellow{background:#fff2d4;color:#b27610}
.ux093 .p95-icon-tile.p95-pvz{background:#eeeaff;overflow:hidden}.ux093 .p95-icon-tile.p95-pvz img{max-width:100%;max-height:100%;object-fit:contain}
.ux093 .p95-mini-arrow{display:grid;place-items:center;flex:none;width:34px;height:34px;background:#f2effd;border-radius:50%;color:#6833c9;font-size:26px;line-height:1}
.ux093 .p95-empty{color:var(--p95-muted);font-size:13px}
.ux093 .p95-management{margin-top:20px;padding:18px 24px}.ux093 .p95-management h2{margin:0;font-size:20px}.ux093 .p95-management p{font-size:13px;color:var(--p95-muted)}
.ux093 .p95-link-row{display:flex;gap:9px;flex-wrap:wrap}.ux093 .p95-link-row a{padding:10px 12px;border-radius:12px;background:#efe9ff;text-decoration:none;font-weight:750;font-size:13px}
.ux093 .p95-calendar{padding:24px}
.ux093 .p95-segments{display:flex;gap:8px;margin:20px 0 22px;max-width:100%;min-width:0}
.ux093 .p95-segments a{display:grid;place-items:center;flex:1;min-width:0;min-height:46px;border-radius:13px;border:1px solid #e2e1f4;background:#f1f3ff;color:#47317b;text-decoration:none!important;font-weight:700;font-size:14px;text-align:center;padding:8px 7px}
.ux093 .p95-segments a[aria-current=page]{color:#fff;background:#7833e9;border-color:#7833e9;box-shadow:0 6px 14px #7c40de20}
.ux093 .p95-month{display:flex;align-items:center;gap:12px;max-width:540px;margin:0 auto 23px;justify-content:center}
.ux093 .p95-month strong{font-size:21px;flex:1;text-align:center;white-space:nowrap}
.ux093 .p95-month>a{height:44px;min-width:44px;padding:10px;display:grid;place-items:center;background:#f3f2ff;border-radius:13px;color:#5d31bb;text-decoration:none}
.ux093 .p95-month .p95-today{font-size:12px;min-width:62px;font-weight:750}
.ux093 .p95-chevron{height:20px;width:20px;fill:none;stroke:currentColor;stroke-width:2}
.ux093 .p95-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;min-width:0}
.ux093 .p95-weekday{text-align:center;font-size:12px;color:#75819f;font-weight:750;margin:0 0 6px}
.ux093 .p95-day{background:#fff;border:1px solid #dfe4f5;border-radius:11px;min-width:0;min-height:94px;padding:8px;display:flex;flex-direction:column;gap:5px;overflow:hidden;position:relative}
.ux093 .p95-day.p95-weekend{background:#fff6f4;border-color:#f3e3df}.ux093 .p95-day.p95-outside{background:#f9faff;opacity:.45}.ux093 .p95-day.p95-today-day{outline:2px solid #7a38ea;outline-offset:-2px}
.ux093 .p95-date{font-size:14px;font-weight:800;color:#1a2752}
.ux093 .p95-day-edit{display:flex;flex-direction:column;gap:5px;height:100%;text-decoration:none!important;color:inherit!important;outline-offset:-2px}.ux093 .p95-day-edit:focus-visible{outline:2px solid #6034c5}
.ux093 .p95-chip{display:block;max-width:100%;font-size:11px;line-height:1.25;font-weight:750;border-radius:8px;padding:5px 4px;overflow-wrap:anywhere}
.ux093 .p95-chip-green{background:#defce9;color:#16764c}.ux093 .p95-chip-blue{background:#e4f2ff;color:#195dbe}.ux093 .p95-chip-purple{background:#eee6ff;color:#6132bc}.ux093 .p95-chip-muted{background:#eaeef5;color:#667086}.ux093 .p95-chip-outline{background:transparent;border:1px solid #ad8ce9;color:#6441ad}
.ux093 .p95-sub,.ux093 .p95-time{display:block;color:#56627d;font-size:10px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere}
.ux093 .p95-time{white-space:nowrap;color:#8290a9}
.ux093 .p95-legend{display:flex;flex-wrap:wrap;gap:12px;margin:19px 2px 0;color:#6a7791;font-size:12px}
.ux093 .p95-legend span{display:inline-flex;align-items:center;gap:6px}.ux093 .p95-dot{display:inline-block;flex:none;width:11px;height:11px;border-radius:50%}.ux093 .p95-dot.green{background:#42d28b}.ux093 .p95-dot.blue{background:#66b6fa}.ux093 .p95-dot.purple{background:#a281ed}.ux093 .p95-dot.gray{background:#c8cedc}
.ux093 .p95-hint,.ux093 .p95-info{border-radius:14px;background:#f1eefe;padding:12px 14px;color:#5d5887;font-size:13px}
.ux093 .p95-summary{display:flex;flex-direction:column;gap:5px;padding:13px 17px;background:#eafbf1;border-radius:17px;margin-top:17px}.ux093 .p95-summary strong{color:#185a44}.ux093 .p95-summary span{color:#527567;font-size:12px}
.ux093 .p95-primary{display:inline-flex;justify-content:center;align-items:center;padding:13px 20px;min-height:48px!important;gap:7px;background:#7835e8!important;border-radius:13px;border:1px solid #7835e8!important;color:#fff!important;font-weight:800!important;text-decoration:none!important;text-align:center;cursor:pointer;box-shadow:0 6px 17px #7835e824}
.ux093 .p95-primary:hover{background:#6125ce!important}.ux093 .p95-mobile-cta{margin-top:16px}
.ux093 .p95-head-points{display:flex;align-items:center;gap:13px;margin-bottom:12px}.ux093 .p95-head-points img{width:72px;height:72px;object-fit:contain;background:#efe9ff;border-radius:15px}
.ux093 .p95-info{display:flex;align-items:center;gap:10px;margin:12px 0 18px}.ux093 .p95-info .p94-icon{flex:none;width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.6}
.ux093 .p95-filter{display:grid;grid-template-columns:2fr 1fr;gap:10px;margin-bottom:18px}.ux093 .p95-filter :is(input,select){width:100%;margin:0}
.ux093 .p95-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap}
.ux093 .p95-smallheading{font-size:13px;color:#6e7691;font-weight:750;margin:4px 0 12px}
.ux093 .p95-prefs-form{padding-bottom:90px}.ux093 .p95-point{padding:14px;margin:0 0 12px}.ux093 .p95-point-detail{display:flex;align-items:center;gap:13px}
.ux093 .p95-point-icon{width:75px;height:75px;flex:none;border-radius:15px;background:#f0e9ff;display:grid;place-items:center;overflow:hidden}
.ux093 .p95-point-icon img{width:100%;height:100%;object-fit:contain}
.ux093 .p95-point-detail>div{display:flex;flex-direction:column;gap:4px;min-width:0}.ux093 .p95-point-detail strong{font-size:18px;line-height:1.2}.ux093 .p95-point-detail small{color:#768099;font-size:12px;overflow-wrap:anywhere}
.ux093 .p95-choice{padding:0;border:none;margin:13px 0 0;min-width:0;display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:7px}
.ux093 .p95-option input,.ux093 .p95-choice-clear input{position:absolute;opacity:0;pointer-events:none;inline-size:1px;block-size:1px}
.ux093 .p95-option{position:relative;cursor:pointer;min-width:0}.ux093 .p95-option span{display:grid;place-items:center;text-align:center;min-height:42px;border-radius:11px;border:1px solid #ebe4f8;background:#f6f6fc;color:#646c87;font-size:12px;padding:8px 5px;font-weight:700}
.ux093 .p95-option input:checked+span{background:#7832db;color:white;border-color:#7832db}.ux093 .p95-option:nth-of-type(3) input:checked+span{background:#fbe2e8;color:#9b1738;border-color:#eab1c0}
.ux093 .p95-option input:focus-visible+span,.ux093 .p95-choice-clear input:focus-visible+span{outline:3px solid #7644dd;outline-offset:2px}
.ux093 .p95-choice-clear{grid-column:1/-1;justify-self:end;color:#6d7293;font-size:11px;cursor:pointer}.ux093 .p95-choice-clear span{text-decoration:underline}.ux093 .p95-choice-clear input:checked+span{text-decoration:none;font-weight:800;background:#eef0f6;padding:5px 10px;border-radius:8px}
.ux093 .p95-savebar{position:sticky;bottom:0;z-index:1051;background:#ffffffed;padding:12px;border:1px solid #e6e3f3;border-radius:19px;box-shadow:0 -5px 25px #23245b16;display:flex;justify-content:space-between;align-items:center;gap:12px}
.ux093 .p95-savebar span{font-size:12px;color:#69748b}.ux093 .p95-savebar button{width:auto;min-width:225px;margin:0}
.ux093 .p95-hub{padding:24px}.ux093 .p95-hub .p95-home-links{margin-top:24px}
/* Salary view: only presentation changes. All financial values and controls come from release094. */
.ux093 .p94.p95-salary{border:none;box-shadow:none;padding:0;background:transparent;max-width:1100px;margin:12px auto}
.ux093 .p95-salary-title{display:flex;align-items:center;gap:15px;margin-bottom:15px}.ux093 .p95-salary-title h1{font-size:clamp(25px,4vw,36px);margin:0}.ux093 .p95-salary-title .p94-icon{width:34px;height:34px;fill:none;stroke:#702fcb;stroke-width:1.7}
.ux093 .p95-salary .p94-inline{background:white;border:1px solid var(--p95-border);border-radius:18px;padding:13px;align-items:end}
.ux093 .p95-salary .p94-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:12px}
.ux093 .p95-salary .p94-grid>div{border:1px solid #e7e6f5;border-radius:20px;background:linear-gradient(140deg,#f6f1ff,#fff);padding:20px;min-width:0}
.ux093 .p95-salary .p94-grid>div:nth-child(2){background:linear-gradient(140deg,#e9fcf2,#fff)}
.ux093 .p95-salary .p94-grid>div:nth-child(3){background:linear-gradient(140deg,#ffeaf0,#fff)}
.ux093 .p95-salary .p94-grid h2{font-size:clamp(22px,3vw,32px);color:#13244b;word-break:break-word}
.ux093 .p95-salary :is(.p94-notice,.p94-warning){padding:16px;border-radius:17px}
.ux093 .p95-salary .p94-actions{gap:10px}.ux093 .p95-salary .p94-actions form{flex:1}.ux093 .p95-salary .p94-actions button{background:#7835e8!important;color:#fff!important;min-height:48px}
.ux093 .p95-salary :is(h2,p){overflow-wrap:anywhere}
@media(max-width:940px){
 body.ux093>.ux-top{box-shadow:none!important;background:#f9f9ffef!important}.ux-top-inner{min-height:68px!important}
 .ux-top-actions .ux-profile{display:block!important}.ux-top-actions .ux-profile .ux-profile-text{display:none}
 .ux-top-actions .ux-mobile-toggle{display:none}.ux093 .ux-profile .ux-menu{right:0;left:auto}
 .ux093 .ux-bottom-nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-radius:21px 21px 0 0;padding:9px 3px max(12px,env(safe-area-inset-bottom));}
 .ux093 .ux-bottom-nav>a{min-width:0!important;min-height:50px;justify-content:center;gap:5px;font-size:0!important;padding:3px!important;color:#9099b0!important}
 .ux093 .ux-bottom-nav .p94-icon{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8}
 .ux093 .ux-bottom-nav>a span{font-size:11px!important;line-height:1.15;white-space:nowrap}
 .ux093 .ux-bottom-nav>a[aria-current=page]{color:#812bed!important}
 .ux093 main{padding-bottom:98px!important}
 .ux093 .p95-savebar{bottom:calc(69px + env(safe-area-inset-bottom));}
}
@media(max-width:600px){
 .ux093 main{padding:0 10px!important;margin:8px 0 0!important;padding-bottom:102px!important}
 .ux093 .ux-breadcrumb{margin-bottom:9px}
 .ux093 .p95-page{margin:0 auto 20px;font-size:14px}
 .ux093 .p95-head h1{font-size:27px}
 .ux093 .p95-welcome{padding:20px 15px}.ux093 .p95-welcome-icon{width:80px;height:80px}
 .ux093 .p95-next{padding:17px 13px}.ux093 .p95-section-heading h2{font-size:17px}
 .ux093 .p95-next-list{flex-wrap:nowrap;overflow:auto;padding-bottom:6px}.ux093 .p95-next-item{min-width:170px;flex:0 0 auto}
 .ux093 .p95-monthcount{white-space:nowrap}
 .ux093 .p95-home-links{grid-template-columns:1fr;gap:10px}.ux093 .p95-tile{min-height:89px;padding:12px}.ux093 .p95-icon-tile{width:58px;height:58px}
 .ux093 .p95-heading{font-size:27px}.ux093 .p95-management{padding:15px}
 .ux093 .p95-calendar{padding:14px 8px 18px;border-radius:23px}
 .ux093 .p95-calendar>.p95-head{padding:0 7px}.ux093 .p95-segments{gap:5px;margin:14px 0 18px}.ux093 .p95-segments a{font-size:11px;min-height:43px;padding:6px 3px}
 .ux093 .p95-segments .p95-tab-long{display:none}
 .ux093 .p95-month{gap:5px;margin:0 auto 14px}.ux093 .p95-month strong{font-size:17px}.ux093 .p95-month>a{min-width:35px;height:38px;padding:8px}
 .ux093 .p95-calendar-grid{gap:3px}.ux093 .p95-weekday{font-size:10px;margin-bottom:2px}
 .ux093 .p95-day{min-height:70px;border-radius:9px;padding:4px 2px;gap:2px}.ux093 .p95-date{font-size:12px;padding-left:2px}
 .ux093 .p95-chip{font-size:9px;line-height:1.12;padding:3px 2px;border-radius:5px;text-align:left}
 .ux093 .p95-sub,.ux093 .p95-time{font-size:8px}.ux093 .p95-legend{gap:8px;font-size:11px}
 .ux093 .p95-mobile-cta{width:100%}
 .ux093 .p95-head-points img{width:64px;height:64px}.ux093 .p95-filter{grid-template-columns:1fr 120px;gap:7px}
 .ux093 .p95-point{padding:12px}.ux093 .p95-point-icon{width:70px;height:70px}.ux093 .p95-point-detail strong{font-size:17px}
 .ux093 .p95-choice{gap:5px}.ux093 .p95-option span{font-size:11px;padding:6px 3px;min-height:40px}
 .ux093 .p95-savebar{flex-direction:column;gap:6px;align-items:stretch;padding:8px}.ux093 .p95-savebar button{min-width:0;width:100%}.ux093 .p95-savebar span{text-align:center}
 .ux093 .p95-hub{padding:14px}
 .ux093 .p95-salary .p94-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 .ux093 .p95-salary .p94-grid>div{padding:13px}.ux093 .p95-salary .p94-grid h2{font-size:22px}
 .ux093 .p95-salary .p94-inline{display:flex;gap:6px;flex-wrap:wrap}.ux093 .p95-salary .p94-inline label{min-width:0;flex:1}
}
@media(prefers-reduced-motion:reduce){.ux093 .p95-tile:hover{transform:none}}
/* Explicit typography and intrinsic sizing even on legacy 0.9 shells. */
body.ux093{font-family:system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;font-size:16px}
.ux093 .p95-primary{box-sizing:border-box}
@media(max-width:600px){
 .ux093 .p95-day .p95-chip{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;overflow-wrap:normal;max-width:100%}
 .ux093 .p95-day .p95-sub{white-space:nowrap;text-overflow:ellipsis}
 .ux093 .p95-day .p95-date{font-size:12px}
}

.ux093 .p95-day[tabindex]{cursor:pointer}.ux093 .p95-day.p95-day-selected{outline:2px solid #7938e8;outline-offset:-2px}
.ux093 .p95-day-details{margin-top:14px;background:#f7f3ff;border:1px solid #e7ddfa;border-radius:14px;padding:15px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:#29315d}
.ux093 .p95-day-details strong{flex-basis:100%;font-size:13px}.ux093 .p95-day-details p{margin:0;color:#677391;font-size:12px}
.ux093 .p95-day-details .p95-chip,.ux093 .p95-day-details .p95-sub,.ux093 .p95-day-details .p95-time{font-size:13px;padding:7px 9px;white-space:normal}
.ux093 .p95-agenda{margin-top:18px;border:1px solid #e9e7f3;border-radius:16px;padding:15px;background:#fff}
.ux093 .p95-agenda-row{display:flex;align-items:center;gap:10px;padding:10px 4px;border-top:1px solid #eceaf6;text-decoration:none!important;color:#243455!important}
.ux093 .p95-agenda-row>strong{background:#eeeafe;border-radius:10px;padding:9px 6px;font-size:12px}
.ux093 .p95-agenda-row>span:nth-child(2){min-width:0;flex:1;display:flex;flex-direction:column;gap:4px;font-size:13px}
.ux093 .p95-agenda-row small{color:#6c7692;font-size:12px}
@media(max-width:600px){.ux093 .p95-agenda{padding:10px;margin-top:13px}.ux093 .p95-day-details{padding:11px}}
