/* WILLY work surfaces. Keep document paper and dense calculation grids intact. */
:root{--w-ui-blue:#2037ad;--w-ui-soft:#eef1fc;--w-ui-line:#e4e4e9;--w-ui-radius:16px;--w-ui-control:10px;--w-ui-ease:cubic-bezier(.2,.7,.2,1);--w-ui-shadow:0 2px 10px rgb(7 7 7 / .035)}
body{ -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
:is(button,a,input,select,textarea){-webkit-tap-highlight-color:transparent}
:is(button,a){touch-action:manipulation}
:is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--w-ui-blue);outline-offset:3px}
:is(button,a){transition:background-color 140ms var(--w-ui-ease),border-color 140ms var(--w-ui-ease),color 140ms var(--w-ui-ease),opacity 140ms var(--w-ui-ease)}
:is(.p-btn,.w-btn,.w-tools-link,.btn,.choice-row button,.request-actions button,.request-page-actions button){border-radius:var(--w-ui-control);min-height:40px;line-height:1.45}
:is(.p-btn,.w-btn,.w-tools-link,.btn):active:not(:disabled){transform:translateY(1px)}
:is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea){border-radius:8px}
:is(input,select,textarea):disabled{cursor:not-allowed}
:is(.panel,.w-panel,.w-table-wrap,.sec,.receipt,.altcard,.kpibox,.brief-card,.mform,.goal-settings,.queue,.notice-box){border-radius:var(--w-ui-radius);box-shadow:var(--w-ui-shadow)}
:is(.panel-head,.w-panel-head,.sec-h){border-top-left-radius:var(--w-ui-radius);border-top-right-radius:var(--w-ui-radius)}
:is(.p-btn.primary,.w-btn.primary,.btn.primary,.btn.pri,.w-tools-link.is-active){box-shadow:0 2px 5px rgb(32 55 173 / .12)}
:is(.tag,.st,.flag,.kind-tag,.pill,.bd){border-radius:6px}
:is(.goal-bar,.goal-meter,.gauge,.dist-track){border-radius:8px;overflow:hidden}
:is(.goal-bar span,.goal-meter span,.gauge span,.dist-track span){border-radius:inherit}
:is(.seg){border-radius:10px;padding:3px;gap:3px;background:var(--sunk,var(--w-ui-soft));border-color:transparent}
:is(.seg button){border-radius:7px;min-height:30px}
:is(.tabs){gap:6px;padding-bottom:5px}
:is(.tabs button){border-radius:8px 8px 0 0;padding-inline:12px}
:is(.tabs button[aria-selected=true]){background:var(--accent-soft,var(--w-ui-soft));color:var(--accent,var(--w-ui-blue))}
:is(.w-tools-bar){border-bottom-color:var(--w-ui-line);gap:16px}
:is(.w-tools-link){border-color:#d8def5;background:#f4f6ff;padding:10px 15px}
:is(.w-tools-link.is-active){background:var(--w-ui-blue);color:#fff;border-color:var(--w-ui-blue)}
:is(.w-tools-account a,.w-tools-account button){border-radius:9px}
.portal{--p-bg:#f6f6f8;--p-line:var(--w-ui-line)}
.portal-content{padding-top:28px}
.portal-sidebar nav a{border-radius:10px}
.portal-sidebar nav a.active{border-left:0;padding-left:13px;background:var(--w-ui-soft);box-shadow:inset 0 0 0 1px #dce2f6}
.portal-sidebar .nav-group-label{letter-spacing:0;font-size:12px;color:#67666d}
.portal-sidebar{border-right-color:var(--w-ui-line)}
.user-initial{border-radius:10px}
.attention-row{border-radius:var(--w-ui-radius);box-shadow:var(--w-ui-shadow)}
.attention-row>button:first-child{border-radius:var(--w-ui-radius) 0 0 var(--w-ui-radius)}
.attention-row>button:last-child{border-radius:0 var(--w-ui-radius) var(--w-ui-radius) 0}
:is(.filter-tabs button,.choice-row button,.request-actions button,.mobile-account .portal-menu-toggle){border-radius:9px}
:is(.data-table th,.w-table th){background:#f8f8fa;color:#595961}
:is(.data-table tr:hover td,.w-table tr.link:hover td){background:#f5f7ff}
.portal-dialog{border-radius:20px!important;box-shadow:0 14px 48px rgb(7 7 7 / .15)}
:is(dialog:not(.meeting-presentation),.overlay .box,.modal){border-radius:20px;box-shadow:0 14px 48px rgb(7 7 7 / .15)}
@media(prefers-reduced-motion:no-preference){:is(dialog[open]:not(.meeting-presentation),.portal-dialog[data-state=open]){animation:w-ui-appear 160ms var(--w-ui-ease) both}}
@keyframes w-ui-appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
/* Waiting never hides the current work behind a full-screen animation. */
.portal-transition{inset:0 0 auto;height:3px;display:block;background:#e5e9fb}
.portal-transition-mark{display:none}
.portal-transition:after{content:'';display:block;width:35%;height:3px;background:var(--w-ui-blue);animation:w-ui-progress 1s var(--w-ui-ease) infinite}
.portal-transition.exiting{animation:w-ui-finish 100ms linear both}
.portal-transition.exiting:after{width:100%;animation:none}
@keyframes w-ui-progress{from{transform:translateX(-100%)}to{transform:translateX(390%)}}
@keyframes w-ui-finish{to{opacity:0}}
.w-tool-loading{background:#f6f6f8;gap:12px}
.w-tool-loading:before{content:'';width:26px;height:26px;border:2px solid #dce2f6;border-top-color:var(--w-ui-blue);border-radius:50%;animation:w-ui-spin .8s linear infinite}
@keyframes w-ui-spin{to{transform:rotate(360deg)}}
/* Official paper, chart colors and calendar geometry are unchanged. */
:is(.doc-head,.sheet,.receipt-print,.stamps,.stamp-table){box-shadow:none;border-radius:2px}
.kpibox,.brief-card{background:var(--surface,#fff)}
.card{border-radius:16px;box-shadow:var(--w-ui-shadow)}
@media(hover:hover){.w-tools-link:not(.is-active):hover{background:#e9edfd;border-color:#aebceb}.portal-sidebar nav a:hover{background:#f1f3fa}.btn:hover:not(:disabled){border-color:#a9b5de}}
@media(max-width:720px){.portal-content{padding:20px 14px}.w-tools-bar{padding:10px 14px}.w-tools-link{min-height:44px}.p-btn:not(.small),.w-btn:not(.small),.btn:not(.small){min-height:42px}.page-heading h1{font-size:25px;letter-spacing:-.035em}.portal-dialog{padding:22px!important}.w-tools-nav{overscroll-behavior-x:contain}.card{border-radius:13px}}
@media(prefers-reduced-motion:reduce){:is(button,a){transition:none!important}:is(dialog,.portal-dialog,.portal-transition,.portal-transition:after,.w-tool-loading:before){animation:none!important}.portal-transition:after{width:100%}}
@media print{body{background:#fff!important}:is(.panel,.w-panel,.sec,.receipt,.card,.kpibox){box-shadow:none;border-radius:0}.portal-transition,.w-tool-loading{display:none!important}:is(button,a){transition:none!important}}
