:root{--nav:#293647;--nav-deep:#222e3d;--blue:#2279c9;--blue-dark:#155d9e;--ink:#1d3049;--muted:#667a91;--bg:#edf2f7;--line:#d5dfe9;--header:76px;--sidebar:228px;--shadow:0 2px 3px #1a36551a,0 7px 20px #1a365507}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 'Yu Gothic UI','Meiryo',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button,a{touch-action:manipulation}button{color:inherit}button:disabled{cursor:not-allowed}button:not(:disabled),a{transition:background .14s,box-shadow .14s,transform .12s,border-color .14s}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #09b6ed;outline-offset:3px}button:not(:disabled):active,.system-card:active,.outline-button:active{transform:translateY(1px)}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.ui-icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}.skip{position:fixed;left:15px;top:-90px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}.header{height:var(--header);position:fixed;inset:0 0 auto;background:#fff;display:flex;align-items:center;gap:30px;padding:0 26px 0 21px;border-bottom:1px solid #cbd8e5;box-shadow:0 2px 6px #233c5510;z-index:20}.header-brand{display:flex;align-items:center;gap:22px}.header-brand img{width:182px;height:auto;display:block}.header-brand>span{border-left:1px solid var(--line);padding-left:22px;font-size:16px;font-weight:700;color:#35475d}.header>time{font-size:13px;font-weight:600;color:#4b6078;white-space:nowrap}.header-actions{margin-left:auto;display:flex;align-items:center;gap:18px}.notification-toggle{position:relative;border:0;border-right:1px solid var(--line);padding:6px 22px 6px 8px;background:transparent;color:#76879a;display:flex}.notification-toggle:hover{color:var(--blue)}.count{position:absolute;top:-1px;right:16px;font-size:10px;font-weight:700;min-width:17px;height:17px;line-height:17px;border-radius:50%;background:#eb5865;color:white;border:1px solid white}.account-menu{position:relative}.account-button{display:flex;align-items:center;gap:11px;background:transparent;border:0;padding:6px;border-radius:5px;font-weight:700}.account-button:hover,.account-button[aria-expanded=true]{background:#edf3fa}.avatar{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:#879aaf;color:white;box-shadow:inset 0 1px 2px #2845641f}.avatar .ui-icon{width:24px;height:24px;stroke-width:2.4}.down{color:#76879d;margin-left:14px}.account-dropdown{position:absolute;right:0;top:53px;background:white;width:230px;border:1px solid #c8d5e3;border-radius:5px;box-shadow:0 8px 26px #172c4d26}.account-summary{padding:16px 18px;background:#f4f7fb;border-bottom:1px solid var(--line);font-size:12px;font-weight:700}.account-summary small{display:block;margin-top:4px;font-weight:400;color:var(--muted)}.account-dropdown a,.logout{display:flex;width:100%;align-items:center;gap:11px;border:0;background:white;padding:14px 18px;text-align:left;font-size:13px}.account-dropdown a:hover,.logout:hover{background:#edf5fc;color:var(--blue)}.sidebar{position:fixed;inset:var(--header) auto 0 0;width:var(--sidebar);background:linear-gradient(120deg,#303f50,var(--nav) 70%);border-right:1px solid #1e2d3e;box-shadow:inset -1px 0 #65728722;z-index:15;display:flex;flex-direction:column;overflow-y:auto}.sidebar-caption{padding:16px 21px 9px;font-size:9px;color:#8699af;font-weight:700;letter-spacing:1.8px}.nav-item{width:100%;border:0;border-radius:0;background:transparent;text-align:left;display:flex;align-items:center;gap:15px;padding:15px 20px;color:#e0e7ef;font-weight:600;font-size:13px;min-height:53px;position:relative;border-left:4px solid transparent}.nav-item>.ui-icon{width:23px;height:23px;color:#c6d3e1}.nav-item>small{margin-left:auto;font-size:9px;color:#a1b3c7;font-weight:400}.nav-item .external-indicator{width:14px;height:14px;margin-left:auto;color:#8ea4bc}.nav-item:hover{background:#3b4c60;color:white}.nav-item.active{background:linear-gradient(100deg,#227bcc,#236eb7);border-left-color:#00c4e8;color:white;box-shadow:inset 0 1px #5f9eda66,inset 0 -1px #0e508b7a}.nav-item.active>.ui-icon{color:white}.nav-label{font-size:10px;color:#869ab1;padding:19px 24px 6px;font-weight:600}.sidebar-bottom{margin-top:auto;border-top:1px solid #536174;padding:24px 20px;background:#22304066;color:#b4c3d4;font-size:10px}.sidebar-bottom small{display:block;font-size:8px;letter-spacing:1px;margin-top:7px;color:#8096ad}.workspace{margin-left:var(--sidebar);padding-top:var(--header);min-height:100vh}main{max-width:1800px;margin:auto;padding:20px 24px 12px}.demo-banner{display:flex;align-items:center;gap:10px;background:#f7f9fc;border:1px solid #d8e0e9;border-radius:4px;padding:7px 11px;font-size:10px;color:#7c8a9d;margin-bottom:16px}.demo-label{background:#e1e9f2;color:#5d7290;font-size:9px;font-weight:700;padding:2px 7px;white-space:nowrap;border-radius:3px}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px;gap:20px}.breadcrumb{font-size:11px;font-weight:600;color:var(--blue);margin:0 0 5px}.breadcrumb>span{margin:0 7px;color:#91a0b2}.page-heading h1{display:flex;align-items:center;gap:10px;font-size:23px;line-height:1.3;font-weight:800;margin:0;letter-spacing:.5px}.page-heading h1>.ui-icon{width:25px;height:25px;color:var(--blue);stroke-width:2.3}.welcome{font-size:12px;font-weight:600;text-align:right;color:#4d637d}.welcome small{display:block;font-size:10px;font-weight:400;margin-top:3px;color:#8794a6}.card{background:white;border:1px solid var(--line);border-radius:5px;box-shadow:var(--shadow);overflow:hidden}.card-heading{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #dce4ed;background:linear-gradient(#fff,#fcfdff);gap:15px;min-height:56px}.card-heading h2{display:flex;align-items:center;gap:11px;margin:0;font-size:16px;font-weight:800;letter-spacing:.2px;color:#1c3555}.card-heading .ui-icon{color:var(--blue);width:26px;height:26px;stroke-width:2.2}.caption{font-size:11px;color:#7487a0}.pill{display:inline-block;border-radius:4px;padding:3px 10px;line-height:1.5;font-size:10px;font-weight:600;white-space:nowrap}.neutral{color:#73849a;background:#edf1f6;border:1px solid #dce4ed}.success{color:#268855;background:#dff5e8}.pending{color:#a96b0c;background:#fff0cd}.top-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:18px;margin-bottom:18px}.clock-body{text-align:center;padding:21px 18px 15px}.clock-date{font-size:17px;font-weight:700;color:#31475f}.clock{font-size:72px;line-height:1.35;font-weight:800;letter-spacing:1px;color:#1c2d43;font-variant-numeric:tabular-nums}.clock small{font-size:19px;color:#7b8ba0;margin-left:8px;font-weight:500}.punch-toolbar{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:13px}.punch{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:700;white-space:nowrap;border-radius:4px;min-height:43px;padding:8px 10px;box-shadow:0 2px 2px #1535521a,inset 0 1px #ffffff91}.punch .ui-icon{width:21px;height:21px}.entry{background:linear-gradient(#368bdb,#246fba);color:white;border:1px solid #216bb2}.exit{color:#d34758;border:1px solid #e4b6be;background:linear-gradient(#fff3f5,#fbe6e9)}.break{background:linear-gradient(#f9fbfd,#edf1f6);color:#53677f;border:1px solid #cbd6e3}.punch:disabled{filter:saturate(.8)}.subtle{font-size:10px;color:#8a98aa;margin:13px 0 0}.notification-list{padding:0 17px}.notification{display:flex;align-items:center;width:100%;border:0;border-bottom:1px solid #e2e8f0;background:white;padding:16px 0;gap:14px;text-align:left}.notification:last-child{border:0}.notification:hover{background:#f4f8fd;box-shadow:0 0 0 8px #f4f8fd}.notice-icon{width:33px;height:33px;display:grid;place-items:center;flex:none;color:white;font-weight:800;font-size:23px;border-radius:50%}.danger{background:linear-gradient(#f37a73,#e35a56)}.success-icon{background:linear-gradient(#5ec48b,#33a26c)}.blue-icon{border-radius:4px;background:#2a88d5}.blue-icon>.ui-icon{width:22px;height:22px;stroke-width:1.8}.notice-copy{min-width:0}.notice-copy strong{display:block;font-size:12px;font-weight:700}.notice-copy small{display:block;font-size:10px;color:#7b8ba0;margin-top:4px}.notice-date{margin-left:auto;font-size:10px;color:#8593a5;white-space:nowrap}.row-arrow{width:16px;height:16px;color:#7e92a9;margin-left:auto}.notification>.row-arrow{margin-left:0}.business-card{margin-bottom:18px}.business-columns{display:grid;grid-template-columns:1.13fr 1fr;padding:17px 20px;gap:26px}.business-columns h3{font-size:14px;font-weight:800;margin:0 0 11px;color:#294360}.internal-links{padding-right:26px;border-right:1px solid #dfe6ef}.system-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.system-card{display:flex;align-items:center;gap:12px;min-height:73px;text-align:left;padding:13px 15px;border:1px solid #d4deea;border-radius:4px;background:linear-gradient(#fff,#fafcfe);box-shadow:0 2px 2px #2441650a;min-width:0}.system-card>.ui-icon:first-child{width:31px;height:31px;color:var(--blue);stroke-width:2.1}.system-card strong{display:block;font-size:12px;font-weight:700}.system-card small{display:block;font-size:10px;color:#7c8ca0;margin-top:4px}.system-card .pill{margin-left:auto;font-size:8px;padding:2px 5px}.system-card:hover{border-color:#81abd3;background:#f0f7fd;box-shadow:0 3px 8px #2c58851a}.system-card:active{box-shadow:inset 0 2px 4px #244d7824}.external-list button{width:100%;border:0;border-bottom:1px solid #e0e7ef;background:white;display:flex;align-items:center;gap:15px;padding:12px 0;text-align:left}.external-list button:last-child{border:0}.external-list button:hover{background:#f2f7fd}.external-list strong{font-size:12px;color:#267ac1;min-width:73px}.external-list span{font-size:11px;color:#6f8198}.external-list small{margin-left:auto;color:#8f9cb0;font-size:9px;white-space:nowrap}.schedule-content{display:grid;grid-template-columns:180px 1fr}.schedule-day{display:flex;flex-direction:column;justify-content:center;align-items:center;background:#f7f9fc;border-right:1px solid var(--line);padding:20px 14px;gap:6px}.schedule-day strong{font-size:17px}.schedule-day>span{font-size:12px;color:#71849d}.schedule-day .today-label{border:1px solid #c6dfef;background:#e2f0fa;color:#2c80b9;padding:4px 30px;border-radius:3px;font-weight:600;font-size:11px;margin-top:10px}.table-wrap{overflow-x:auto;padding:4px 17px 12px}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;color:#6b7f99;font-size:11px;font-weight:700;background:#fbfcfe;white-space:nowrap;padding:10px 7px 9px;border-bottom:1px solid #d7e1ec}td{padding:11px 7px;border-bottom:1px solid #e2e9f1;color:#405978;line-height:1.5}tr:last-child td{border-bottom:0}tbody tr:hover{background:#f5f9fe}td strong{font-weight:600}td:first-child{white-space:nowrap}.time-cell{font-variant-numeric:tabular-nums;color:#657c95;width:90px}.event-dot{width:7px;height:7px;display:inline-block;border-radius:50%;margin-right:13px;background:#5987df;vertical-align:middle}.event-2{background:#e9aa43}.event-3{background:#4cb08c}.schedule-table{padding-top:0}.empty{text-align:center;padding:30px 20px!important;color:#8190a4;font-size:12px}.empty p{font-size:11px;margin:10px 0}.empty a{color:var(--blue)}.profile-card{display:grid;grid-template-columns:140px 1.1fr 1fr;gap:26px;padding:24px 30px;align-items:center;margin-bottom:18px}.profile-photo{text-align:center}.profile-avatar{display:grid;place-items:center;width:102px;height:102px;border-radius:50%;background:linear-gradient(#e7edf4,#dbe4ef);margin:0 auto 8px;box-shadow:inset 0 1px 4px #718ca417;border:1px solid #e0e7ef;color:#8a9cb1}.profile-avatar .ui-icon{width:65px;height:65px;fill:#8a9cb1;stroke-width:.7}.profile-photo>small{font-size:10px;color:#8b9bb0}.profile-name{display:flex;align-items:center;gap:22px;margin-bottom:13px}.profile-name h2{font-size:25px;font-weight:800;margin:0;white-space:nowrap}.profile-name>span{color:#788ba4;font-size:11px;font-weight:600}.profile-identity dl,.profile-employment{margin:0}.profile-card dl>div{display:grid;grid-template-columns:100px 1fr;gap:16px;padding:7px 0;border-bottom:1px solid #e5ebf3}.profile-card dl>div:last-child{border:0}.profile-card dt{font-size:12px;font-weight:700;color:#59708d}.profile-card dd{margin:0;font-size:13px;color:#304b6c;font-weight:600}.profile-employment{border-left:1px solid #dbe4ee;padding-left:30px}.rank-label{color:#246eae;font-weight:800}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:6px 0 10px}.section-heading h2{font-size:12px;color:#647b98;margin:0;font-weight:700}.section-heading>span{font-size:10px;color:#8898ac}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:18px}.metric{display:flex;gap:14px;padding:19px 17px;align-items:flex-start;border-top:3px solid #2888d2}.metric>.ui-icon{width:31px;height:31px;color:#2888d2;margin-top:2px}.metric h3{font-size:13px;font-weight:800;margin:0 0 5px;color:#29466a}.metric strong{display:block;font-size:25px;font-weight:800;letter-spacing:-.4px;white-space:nowrap;color:#1f354f}.metric small{display:block;font-size:10px;color:#8a9ab0;margin-top:5px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.profile-grid .card-heading{min-height:52px;padding:12px 17px}.profile-grid .card-heading h2{font-size:15px}.profile-grid .card-heading .ui-icon{width:24px;height:24px}.table-actions{white-space:nowrap;text-align:right}.actions-head{text-align:center}.outline-button{display:inline-block;border:1px solid #cbd8e7;border-radius:3px;background:linear-gradient(#fff,#f6f9fd);padding:3px 17px;color:#277ac2;font-size:10px;font-weight:700;box-shadow:0 1px 2px #1c365513;margin:0 0 0 5px}.outline-button:hover{border-color:#619acb;background:#eaf4fe}.outline-button:disabled{color:#9dabbf;background:#f6f8fb;box-shadow:none}.card-note{font-size:10px;color:#8e9bb0;padding:9px 22px;background:#fafbfd;border-top:1px solid #e3eaf2}footer{display:flex;justify-content:space-between;color:#95a2b3;font-size:9px;margin:17px 0 5px;padding:0 2px}dialog{padding:0;border:1px solid #a4b9d0;max-width:470px;width:calc(100% - 40px);border-radius:6px;box-shadow:0 18px 70px #13284166;color:var(--ink)}dialog::backdrop{background:#162b4866;backdrop-filter:blur(2px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;padding:17px 21px;border-bottom:1px solid var(--line);background:#f6f9fc}.dialog-heading h2{font-size:16px;margin:0;font-weight:800}.dialog-heading button{border:0;background:none;font-size:25px;color:#8092a7}.dialog-heading button:hover{color:#1b609f}dialog>p{padding:8px 24px;line-height:1.9;font-size:13px;color:#607691}.dialog-footer{padding:14px 21px 20px;text-align:right}.primary{padding:9px 20px;border:1px solid #1b65a7;background:linear-gradient(#3186d2,#216bb5);color:white;border-radius:4px;font-size:12px;font-weight:700;box-shadow:0 2px 2px #24456833,inset 0 1px #ffffff44}.primary:hover{background:linear-gradient(#247dc8,#165e9e)}.menu-button,.menu-scrim{display:none}.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#253749,#405975);padding:20px}.login-card{width:420px;max-width:100%;padding:35px}.login-card>img{width:230px;display:block;margin:0 auto 23px}.eyebrow{font-size:10px;letter-spacing:2px;color:#6b85a0;text-align:center}.login-card h1{font-size:23px;margin:24px 0 8px}.login-card p{font-size:12px;color:#71869e}.login-card label{display:block;margin-top:19px;font-size:12px;font-weight:700}.login-card input{width:100%;padding:11px;border:1px solid #bccdde;border-radius:3px;margin-top:6px;background:#fbfcfe}.login-card form>.primary{width:100%;margin:24px 0 17px}.login-card>small{font-size:10px;color:#8a9aae}.errorlist{font-size:11px;color:#bb3a48;padding-left:17px}
@media(min-width:1500px){:root{--sidebar:242px}.header-brand img{width:200px}.nav-item{padding:17px 24px;font-size:14px}.nav-item>small{font-size:10px}main{padding:22px 27px}.clock{font-size:82px}.clock-body{padding:24px 22px 19px}.notification{padding:19px 0}.notice-copy strong{font-size:14px}.notice-copy small{font-size:11px}.system-card strong{font-size:13px}.system-card small{font-size:11px}.system-card{min-height:80px}.external-list span{font-size:12px}.metric strong{font-size:29px}table{font-size:13px}td{padding:12px 8px}}
@media(max-width:1200px){:root{--sidebar:205px}.header-brand>span{display:none}.header{gap:25px}.nav-item{padding:14px 15px;gap:12px;font-size:12px}.nav-item>small{font-size:8px}.top-grid{grid-template-columns:1fr 1fr}.clock{font-size:64px}.punch-toolbar{grid-template-columns:1fr 1fr}.punch{min-height:37px}.business-columns{grid-template-columns:1.1fr 1fr;gap:18px;padding:15px 17px}.internal-links{padding-right:18px}.system-grid{grid-template-columns:1fr}.system-card{min-height:64px}.external-list button{flex-wrap:wrap;gap:5px 12px;padding:15px 0}.external-list strong{width:100%}.external-list span{font-size:10px}.external-list small{font-size:8px}.notice-date{display:none}.metric{gap:10px;padding:16px 12px}.metric strong{font-size:21px}.metric>.ui-icon{width:24px;height:24px}.profile-card{grid-template-columns:110px 1fr 1fr;gap:18px;padding:22px}.profile-name{display:block}.profile-name>span{display:block;margin-top:4px}.profile-employment{padding-left:18px}.profile-card dl>div{grid-template-columns:75px 1fr;gap:10px}.profile-card dd{font-size:12px}.profile-grid .table-wrap{padding:4px 10px 9px}.outline-button{padding:3px 10px}}
@media(max-width:900px){:root{--header:68px;--sidebar:0px}.header{padding:0 18px;gap:15px}.header-brand img{width:153px}.header>time{display:none}.header-actions{gap:10px}.notification-toggle{padding-right:16px}.count{right:10px}.account-button{font-size:12px;gap:8px}.down{margin-left:4px}.sidebar{width:225px;transform:translateX(-100%);visibility:hidden;transition:transform .18s,visibility .18s}.menu-open .sidebar{transform:translateX(0);visibility:visible;box-shadow:8px 0 20px #1b314642}.menu-open .menu-scrim{display:block;position:fixed;inset:var(--header) 0 0;background:#1a2c4a55;border:0;z-index:14;width:100%;height:calc(100% - var(--header))}.menu-button{display:flex;align-items:center;justify-content:center;border:0;background:transparent;padding:5px;color:#506980}.menu-button>.ui-icon{width:22px}.profile-card{grid-template-columns:110px 1fr 1fr}.metrics{gap:10px}.profile-grid{gap:14px}.profile-grid .card-heading h2{font-size:14px}main{padding:18px}.business-columns{grid-template-columns:1.1fr 1fr}.system-grid{grid-template-columns:1fr}.notification{gap:10px}.notice-copy strong{font-size:11px}.metric strong{font-size:20px}}
@media(max-width:650px){:root{--header:62px}.header{padding:0 12px;gap:10px}.header-brand img{width:130px}.header-actions{gap:5px}.account-button>span:not(.avatar){display:none}.avatar{width:31px;height:31px}.account-button{padding:4px}.notification-toggle{padding:5px 12px 5px 4px}.notification-toggle .ui-icon{width:21px;height:21px}.count{font-size:8px;right:6px;top:0;min-width:14px;height:14px;line-height:14px}.account-dropdown{top:45px}.page-heading{margin-bottom:14px}.page-heading h1{font-size:21px}.page-heading>.caption,.welcome{display:none}main{padding:15px 12px}.demo-banner{font-size:9px;gap:8px;align-items:flex-start;line-height:1.7}.demo-label{font-size:8px}.top-grid{grid-template-columns:1fr;gap:15px;margin-bottom:15px}.card-heading{padding:13px 15px;min-height:52px}.card-heading h2{font-size:15px}.card-heading .ui-icon{width:24px;height:24px}.clock{font-size:75px}.clock-body{padding:22px 16px 15px}.clock-date{font-size:16px}.punch-toolbar{grid-template-columns:1fr 1fr;gap:9px}.punch{min-height:44px;font-size:12px}.notification{padding:17px 0;gap:12px}.notice-copy strong{font-size:12px}.notice-copy small{font-size:10px}.business-columns{grid-template-columns:1fr;gap:20px;padding:17px 15px}.internal-links{border-right:0;padding-right:0}.system-grid{grid-template-columns:1fr 1fr;gap:9px}.system-card{display:grid;grid-template-columns:24px 1fr;gap:8px;padding:12px 10px;min-height:96px}.system-card>.ui-icon:first-child{width:24px;height:24px}.system-card strong{font-size:11px}.system-card small{font-size:9px}.system-card>.row-arrow,.system-card>.pill{grid-column:2;margin-left:0;justify-self:start}.system-card>.row-arrow{width:12px;height:12px;justify-self:end}.external-links{border-top:1px solid #dae4ed;padding-top:17px}.external-list button{padding:13px 0;gap:8px;flex-wrap:nowrap}.external-list strong{min-width:65px;width:auto;font-size:11px}.external-list span{font-size:9px}.external-list small{font-size:8px}.schedule-content{grid-template-columns:1fr}.schedule-day{flex-direction:row;justify-content:flex-start;gap:12px;border-right:0;border-bottom:1px solid var(--line);padding:11px 15px}.schedule-day strong{font-size:13px}.schedule-day>span{font-size:10px}.schedule-day .today-label{margin:0 0 0 auto;font-size:9px;padding:3px 13px}.schedule-table{padding:3px 10px 8px}table{font-size:11px}th{font-size:10px;padding:9px 6px}td{padding:10px 6px}.schedule-table th:last-child,.schedule-table td:last-child{display:none}.time-cell{width:54px}.event-dot{margin-right:7px;width:6px;height:6px}.profile-card{grid-template-columns:74px 1fr;gap:15px;padding:20px 16px}.profile-avatar{width:70px;height:70px}.profile-avatar .ui-icon{width:46px;height:46px}.profile-photo>small{font-size:8px}.profile-name h2{font-size:22px}.profile-name>span{font-size:10px}.profile-card dl>div{grid-template-columns:65px 1fr;gap:10px;padding:6px 0}.profile-card dt{font-size:11px}.profile-card dd{font-size:12px}.profile-employment{grid-column:1/-1;padding:12px 0 0;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:5px 12px}.profile-employment>div{display:block!important;border:0!important}.profile-employment dd{margin-top:4px}.metrics{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:15px}.metric{gap:9px;padding:15px 10px}.metric h3{font-size:11px}.metric strong{font-size:21px;white-space:normal;line-height:1.3}.metric small{font-size:8px;margin-top:6px}.metric>.ui-icon{width:24px;height:24px}.profile-grid{grid-template-columns:1fr;gap:15px}.profile-grid .card-heading{padding:12px 15px}.profile-grid .table-wrap{padding:4px 12px 9px}.table-actions .outline-button{font-size:9px;padding:4px 11px}.section-heading{align-items:center;gap:10px}.section-heading>span{font-size:9px;text-align:right}.section-heading h2{font-size:11px}.card-note{padding:9px 15px;font-size:9px}footer{font-size:8px}.notice-date{display:none}.dialog-heading h2{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.skip{top:10px;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}.skip:focus{width:auto;height:auto;padding:12px;clip-path:none}

.attendance-external{display:inline-block;text-decoration:none;padding:12px 18px;border-radius:7px;font-size:13px}.attendance-toolbar{display:flex;align-items:center;gap:16px;padding:22px;flex-wrap:wrap}.attendance-toolbar form{display:flex;align-items:center;gap:12px}.attendance-toolbar input{padding:10px;border:1px solid #ccd7e2;border-radius:6px;background:#f7f9fc;color:#203b55;font:inherit}.month-step{font-size:25px;text-decoration:none;color:#234963;padding:2px 12px;background:#eef3f7;border-radius:6px}.attendance-stats{display:grid;grid-template-columns:repeat(5,1fr);margin:0 22px 20px;border:1px solid #dbe4ec;border-radius:9px;overflow:hidden}.attendance-stats>div{padding:18px;border-right:1px solid #dbe4ec;background:linear-gradient(#fff,#f1f5fa)}.attendance-stats span{font-size:12px;color:#60778c}.attendance-stats strong{display:block;font-size:26px;color:#203b55;margin-top:8px;font-variant-numeric:tabular-nums}.attendance-stats small{display:block;font-size:10px;font-weight:400;color:#778da1;margin-top:4px}.attendance-note{padding:12px 22px;background:#f0f5fa;font-size:12px;color:#506b83;line-height:1.8}.attendance-table{min-width:1000px;width:100%;font-variant-numeric:tabular-nums}.attendance-table th{white-space:nowrap;background:#e8eff6;color:#2c4a64}.attendance-table td{white-space:nowrap;padding:13px 12px}.attendance-table td small{display:block;color:#8a6c31}.attendance-table .rest-day{background:#f2f5f9;color:#7b8fa1}.attendance-bottom{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}.attendance-panel{padding:22px;line-height:1.8;font-size:13px}.attendance-request{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid #e1e8ef}@media(max-width:700px){.attendance-stats{grid-template-columns:repeat(2,1fr);margin:0 14px 14px}.attendance-stats>div{padding:14px}.attendance-bottom{grid-template-columns:1fr}.attendance-toolbar{padding:15px;gap:8px}.attendance-toolbar form{gap:6px}.attendance-toolbar label{display:none}.attendance-external{font-size:11px;padding:10px}.attendance-stats strong{font-size:23px}}
/* 約0.5秒の操作エフェクト */
@keyframes operation-feedback{0%{filter:brightness(1);box-shadow:0 0 0 0 #2279c955}35%{filter:brightness(1.12);box-shadow:0 0 0 5px #2279c922}100%{filter:brightness(1);box-shadow:0 0 0 9px #2279c900}}
@keyframes portal-enter{from{opacity:.25;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes transition-spin{to{transform:rotate(360deg)}}
.operation-feedback{animation:operation-feedback .5s ease-out}
main>.page-heading,main>.card,main>.top-grid,main>.profile-card{animation:portal-enter .5s cubic-bezier(.2,.7,.2,1)}
.portal-transition{position:fixed;inset:var(--header) 0 0 var(--sidebar);z-index:40;background:#edf2f7c9;display:grid;place-items:center;backdrop-filter:blur(2px);animation:portal-enter .16s ease-out}
.portal-transition[hidden]{display:none}
.transition-panel{display:flex;flex-direction:column;align-items:center;gap:16px;padding:28px 38px;border-radius:10px;background:linear-gradient(135deg,#2c4058,#1d6da9);color:white;border:1px solid #6888a2;box-shadow:0 12px 36px #20394f33;font-size:13px}
.transition-spinner{width:30px;height:30px;border:3px solid #ffffff38;border-top-color:#fff;border-radius:50%;animation:transition-spin .7s linear infinite}
@media(max-width:900px){.sidebar{transition:transform .5s cubic-bezier(.2,.7,.2,1),visibility .5s}.portal-transition{left:0}}
.account-dropdown,dialog[open]{animation:portal-enter .5s cubic-bezier(.2,.7,.2,1)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.portal-signin{min-height:100svh;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 35%,#fff 0,#f2f5fa 55%,#e8eef5 100%);padding:32px 18px}
.signin-shell{margin:0;padding:0;width:min(360px,100%);text-align:center;animation:portal-enter .5s ease-out}
.signin-logo{width:240px;max-width:85%;height:auto;margin-bottom:20px}.signin-shell h1{font-size:20px;margin:0;color:#243b55}.signin-caption{font-size:10px;letter-spacing:2.5px;color:#8192a6;margin:7px 0 24px}
.signin-form{background:white;border:1px solid #d3dce7;box-shadow:0 3px 5px #1b36551a,0 14px 36px #1b36550d;border-radius:5px;overflow:hidden;text-align:left}
.signin-fields{padding:23px}.signin-fields label{display:block;font-size:11px;font-weight:600;color:#61758b;margin-bottom:6px}.signin-fields input{display:block;width:100%;height:44px;padding:10px 12px;border:1px solid #bdccdc;border-radius:3px;background:#fcfdff;color:#243b55}.signin-fields input+label{margin-top:18px}.signin-action{padding:18px 23px;border-top:1px solid #dae3ed;background:#f9fbfd}.signin-action button{width:100%;min-height:46px;font-size:15px}.signin-help{font-size:11px;line-height:1.8;color:#7c8fa5;margin:19px 0}.signin-shell>small{font-size:9px;color:#8b9aab}.signin-error{color:#b63748;background:#fff0f2;border:1px solid #f1c6cf;border-radius:3px;padding:10px;font-size:12px;margin:0 0 17px}

.portal-signin{padding:40px;background:radial-gradient(ellipse at 20% 0,#dce6f1,transparent 60%),#edf2f7}
.signin-layout{width:min(1040px,100%);min-height:620px;display:grid;grid-template-columns:1.05fr 1fr;border:1px solid #d4dfeb;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 28px 80px #1a345522}
.signin-brand{position:relative;overflow:hidden;padding:43px 46px;background:radial-gradient(circle at 90% 0,#26669a,transparent 65%),linear-gradient(145deg,#24374e,#152638);color:#fff;display:flex;flex-direction:column}
.signin-wordmark{font-size:25px;font-weight:800;letter-spacing:3px;z-index:1}.signin-wordmark span{display:block;font-size:8px;letter-spacing:2px;font-weight:500;color:#b5cbdf;margin-top:5px}
.brand-art{position:absolute;width:340px;height:340px;right:-75px;top:75px;transform:rotate(-25deg);opacity:.8}.brand-art i{position:absolute;inset:0;border:1px solid #a7d6ff35;border-radius:60px;transform:rotate(45deg)}.brand-art i:nth-child(2){inset:40px;border-color:#8ac9ff50}.brand-art i:nth-child(3){inset:80px;background:linear-gradient(130deg,#5bb8ea30,#17334f20);border-color:#91d6fd70}.brand-art i:nth-child(4){inset:120px;background:#73c6ee18}
.brand-message{position:relative;margin-top:auto;padding-top:190px}.brand-message>span{font-size:9px;letter-spacing:2.5px;color:#78c8f0}.brand-message h2{font-size:38px;letter-spacing:2px;line-height:1.65;margin:19px 0 20px}.brand-message p{font-size:13px;line-height:2;color:#bccdde}.signin-brand>small{font-size:9px;letter-spacing:2px;color:#718da9;margin-top:39px}
.signin-shell{width:auto;align-self:center;padding:45px 48px;text-align:left}.signin-logo{width:200px;margin-bottom:35px}.signin-welcome{font-size:9px;letter-spacing:2px;color:#2279c9;font-weight:700;margin:0 0 9px}.signin-shell h1{font-size:23px;letter-spacing:.3px}.signin-caption{margin:8px 0 30px;color:#96a5b6;font-size:9px}.signin-form{border:0;box-shadow:none;overflow:visible}.signin-fields{padding:0}.signin-fields label{font-size:12px;color:#48607b;margin-bottom:9px}.signin-fields input{height:50px;border-radius:7px;background:#f5f8fc;border-color:#d4dfeb;padding:12px 15px}.signin-fields input+label{margin-top:23px}.signin-action{padding:27px 0 0;background:none;border:0}.signin-action button{min-height:50px;border-radius:7px;box-shadow:0 5px 12px #2279c92b}.signin-help{margin:23px 0 31px;font-size:10px}.signin-shell>small{font-size:9px}
@media(max-width:750px){.portal-signin{padding:20px 14px}.signin-layout{grid-template-columns:1fr;min-height:auto;max-width:460px;border-radius:15px}.signin-brand{padding:24px 28px;min-height:175px}.signin-wordmark{font-size:17px}.brand-message{padding-top:24px}.brand-message>span,.brand-message p,.signin-brand>small{display:none}.brand-message h2{font-size:23px;line-height:1.4;margin:0}.brand-art{width:230px;height:230px;top:-40px;right:-40px}.signin-shell{padding:30px 28px}.signin-logo{width:170px;margin-bottom:22px}.signin-shell h1{font-size:20px}.signin-caption{margin-bottom:24px}.signin-help{margin-bottom:20px}}

.attendance-heading-actions{display:flex;align-items:center;gap:10px}.attendance-heading-actions .outline-button{font-size:11px;padding:6px 12px}

.workspace-note{font-size:12px;color:#647a91;line-height:1.8;margin:0 0 18px}.workspace-panel{padding:24px}.workspace-body{white-space:pre-wrap;line-height:2;margin:25px 0}.workspace-back{display:block;margin-top:24px;color:var(--blue)}.workspace-table{width:100%;min-width:650px}.workspace-table a{color:var(--blue);font-weight:600}.workspace-form{max-width:650px}.workspace-form label{display:block;margin-bottom:8px;font-weight:600}.workspace-form input,.workspace-form select,.workspace-form textarea,.workspace-filter select{width:100%;border:1px solid #bccddd;background:#f8fafd;padding:11px;border-radius:5px;font:inherit}.workspace-actions,.workspace-filter{display:flex;align-items:center;gap:12px;margin:20px 0}.workspace-filter select{width:auto}.workflow-details{display:grid;grid-template-columns:100px 1fr;gap:18px;margin:25px 0}.workflow-details dt{color:#74869b}.workflow-details dd{margin:0}.approval-route{background:#eef4fa;border:1px solid #dbe5ee;border-radius:7px;padding:20px;margin:24px 0}.approval-route small{color:#687d94}@media(max-width:650px){.workspace-panel{padding:17px}.workspace-actions{flex-wrap:wrap}.workflow-details{grid-template-columns:75px 1fr}}

.workflow-history{margin:28px 0}.workflow-history ol{list-style:none;padding:0 0 0 10px;border-left:2px solid #d8e3ee}.workflow-history li{position:relative;padding:0 0 22px 20px;display:flex;flex-direction:column;gap:5px}.workflow-history li:before{content:"";position:absolute;left:-16px;top:5px;width:10px;height:10px;border-radius:50%;background:#315b83;border:2px solid #f8fbfe}.workflow-history time,.workflow-history span{color:#708399;font-size:12px}

.workspace-counts{display:flex;gap:12px;margin-bottom:24px}.workspace-counts a{border:1px solid #dbe5ee;border-radius:8px;padding:16px;flex:1;display:flex;flex-direction:column;gap:8px;color:#264b70;background:#f7faff}.workspace-counts strong{font-size:22px}.workspace-filter{flex-wrap:wrap}.workspace-filter input{min-width:160px;border:1px solid #bccddd;padding:11px;border-radius:5px;font:inherit;max-width:100%}.workspace-form input[type=checkbox],.workspace-form input[type=radio]{width:auto}

.workflow-details dd,.workspace-body,.approval-route p{overflow-wrap:anywhere;min-width:0}.workspace-panel>.table-wrap{max-width:100%;overflow-x:auto}.workspace-form input,.workspace-form textarea,.workspace-form select{box-sizing:border-box;max-width:100%}@media(max-width:650px){.workspace-filter{align-items:stretch}.workspace-filter input,.workspace-filter select{width:100%;min-width:0}.workspace-filter button{min-height:44px}.page-heading{flex-wrap:wrap;gap:12px}.workspace-panel{min-width:0}}

.schedule-field{margin:0 0 20px}.schedule-field>label{display:block;margin-bottom:8px;font-weight:600}.schedule-field>small{display:block;margin-top:8px;color:var(--muted,#64748b)}.schedule-field[hidden],[data-repeat-help][hidden]{display:none}.schedule-field select[multiple]{min-height:130px}

.schedule-modes{display:flex;gap:8px;margin-bottom:20px}.schedule-modes a{padding:10px 20px;border:1px solid #d6deea;border-radius:8px}.schedule-modes a[aria-current]{background:#14243b;color:white}.schedule-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #d6deea;border-left:1px solid #d6deea}.schedule-weekday{text-align:center;background:#14243b;color:white;padding:10px}.calendar-day{min-height:125px;padding:8px;border-right:1px solid #d6deea;border-bottom:1px solid #d6deea;min-width:0}.calendar-day.outside{background:#f1f4f8}.calendar-day.today{box-shadow:inset 0 0 0 2px #318ad4}.schedule-date{display:inline-flex;min-height:32px;min-width:32px;align-items:center;justify-content:center}.schedule-entry{background:#e9f1fb;border-left:3px solid #318ad4;padding:6px;margin-top:5px;overflow-wrap:anywhere}.schedule-entry small,.schedule-entry strong{display:block}.schedule-entry strong{font-size:12px}@media(max-width:700px){.schedule-calendar{grid-template-columns:1fr}.schedule-weekday,.calendar-day.outside{display:none}.calendar-day{min-height:64px}.schedule-date:before{content:attr(data-date)}}
@media(max-width:700px){.schedule-date span{display:none}}
.schedule-detail{display:grid;grid-template-columns:150px 1fr;gap:18px}.schedule-detail dt{color:#64748b}.schedule-detail dd{margin:0;overflow-wrap:anywhere}.schedule-controls{margin:28px 0;border-top:1px solid #d6deea;padding-top:20px}.schedule-controls form{display:inline-block;margin:8px 12px 8px 0}.schedule-controls button{padding:12px 18px;min-height:44px}@media(max-width:600px){.schedule-detail{grid-template-columns:1fr;gap:8px}.schedule-detail dd{margin-bottom:12px}}
[data-multiple-periods][hidden]{display:none}.schedule-period{border:1px solid #d6deea;padding:20px;margin:20px 0;border-radius:10px}.schedule-period legend{font-weight:600;padding:0 8px}
.punch-toolbar form{display:flex;flex:1;min-width:65px}.punch-toolbar form .punch{width:100%}.punch-recent{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:#64748b;margin:12px 0}.punch-message{border:1px solid #abc7e8;background:#eef5fd;padding:12px;border-radius:8px}
.password-change-shell{max-width:540px;margin:40px auto;width:calc(100% - 32px)}.password-help{font-size:12px;color:#64748b;margin:12px 0}.password-help ul{padding-left:20px}.password-change-shell .signin-form button{margin-top:20px}

.security-page{padding:32px 18px;background:radial-gradient(ellipse at 20% 0,#315374,transparent 60%),linear-gradient(145deg,#132537,#263c52);min-height:100svh}.security-card{width:min(520px,100%);max-width:520px;padding:0;margin:auto;background:#fff;border:1px solid #ffffff30;border-radius:22px;overflow:hidden;box-shadow:0 28px 90px #08172466}.security-brand{padding:26px 36px 23px;background:#fff;border-bottom:1px solid #e4eaf1;display:flex;flex-direction:column;gap:12px}.security-logo{width:218px;max-width:100%;line-height:0}.security-logo img{width:100%;height:auto;display:block}.security-brand>span{font-size:11px;letter-spacing:1px;color:#6b7d90}.security-content{padding:30px 36px 24px}.security-content h1{margin:0;font-size:26px;letter-spacing:.4px}.security-description{font-size:12px;line-height:1.9;color:#718397;margin:13px 0 18px}.security-account{background:#eff4fa;border:1px solid #dfe8f2;border-radius:8px;padding:11px 14px;font-size:12px;color:#6b7e94;margin-bottom:24px;display:flex;justify-content:space-between;gap:12px}.security-account strong{color:#233b55}.security-field{margin-bottom:20px}.security-field label{display:block;font-size:12px;font-weight:700;color:#415970;margin:0 0 8px}.security-field input{display:block;width:100%;min-width:0;height:48px;border:1px solid #ccd9e6;border-radius:8px;padding:11px 14px;background:#f7f9fc;color:#20374f}.security-field input:focus{background:#fff;border-color:#2279c9;box-shadow:0 0 0 3px #2279c914}.security-field .password-help{font-size:11px;line-height:1.8;margin:9px 0 0}.security-field .password-help ul{margin:0;padding-left:17px}.security-form>.primary{width:100%;min-height:49px;border-radius:8px;font-size:13px;display:flex;justify-content:space-between;align-items:center}.security-logout{text-align:center;margin-top:19px}.security-logout button{border:0;background:transparent;padding:8px 14px;color:#72849a;font-size:12px}.security-card footer{text-align:center;padding:17px;background:#f5f8fb;border-top:1px solid #e4eaf1;font-size:10px;color:#90a0b1}@media(max-width:540px){.security-page{padding:20px 14px}.security-brand{padding:24px}.security-content{padding:25px 24px 20px}.security-content h1{font-size:23px}.security-card{border-radius:16px}}

.attendance-code-section{margin-top:22px}
.attendance-correction-form{padding:26px}.correction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.correction-field{display:flex;flex-direction:column;gap:8px;min-width:0}.correction-field label{font-weight:700;color:#243953}.correction-field input,.correction-field select,.correction-field textarea{width:100%;box-sizing:border-box;border:1px solid #c6d3e1;border-radius:10px;padding:12px 14px;font:inherit;background:#f8fafc;color:#172b44}.correction-field input:focus,.correction-field select:focus,.correction-field textarea:focus{outline:3px solid #cce2f6;border-color:#3279b9}.correction-wide{grid-column:1/-1}.correction-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.attendance-correction-form .errorlist{color:#ac2535;padding-left:20px;margin:4px 0}@media(max-width:640px){.correction-grid{grid-template-columns:1fr}.attendance-correction-form{padding:18px}.correction-actions{flex-wrap:wrap}}

.external-list a{width:100%;border:0;border-bottom:1px solid #e0e7ef;background:white;display:flex;align-items:center;gap:15px;padding:12px 0;text-align:left}
.external-list a:last-child{border:0}
.external-list a:hover{background:#f2f7fd}
.external-list a{flex-wrap:wrap;gap:5px 12px;padding:15px 0}
.external-list a{padding:13px 0;gap:8px;flex-wrap:nowrap}

.punch-toolbar-live{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:14px 0 4px}.punch-control{min-width:0;text-align:center}.punch-toolbar-live form{min-width:0;display:block}.punch-toolbar-live .punch{min-height:34px;padding:5px 7px;font-size:12px;width:100%}.punch-time{display:block;margin-top:7px;font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;color:#52677e;line-height:1.4}.punch-history-link{display:inline-block;font-size:12px;color:var(--blue);margin:4px 0}.punch-toolbar-live + .subtle{margin:8px 0 4px}@media(max-width:380px){.punch-toolbar-live{gap:5px}.punch-toolbar-live .punch{padding:5px 2px;font-size:11px}.punch-time{font-size:13px}}

.monthly-summary .attendance-table{min-width:0;width:100%}.monthly-summary>p,.monthly-summary>form{margin:16px 20px}.monthly-summary .attendance-table th{width:42%}

.monthly-decision-form{margin-top:24px;display:grid;gap:10px}.monthly-decision-form label{display:block;font-size:13px;font-weight:600}.monthly-decision-form textarea{display:block;width:100%;box-sizing:border-box;min-height:90px;padding:12px;border:1px solid #ccd7e2;border-radius:7px;background:#f7f9fc;color:#203b55;font:inherit}.monthly-decision-form .attendance-toolbar{padding:0;margin:4px 0}
.monthly-status-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:20px 22px;background:#f7faff;border-bottom:1px solid var(--line)}.monthly-status-summary>div{padding:10px 13px;border:1px solid #dae4ee;border-radius:8px;background:white}.monthly-status-summary span{display:block;font-size:11px;color:#63758b}.monthly-status-summary strong{display:block;font-size:25px;color:#263e58;font-variant-numeric:tabular-nums}.monthly-status-summary small{font-size:11px;margin-left:6px;font-weight:400}.monthly-status-filter{display:flex;align-items:end;flex-wrap:wrap;gap:12px;padding:18px 22px}.monthly-status-filter label{display:flex;flex-direction:column;gap:6px;font-size:12px}.monthly-status-filter input,.monthly-status-filter select{height:37px;max-width:100%;border:1px solid #c9d7e5;border-radius:6px;padding:7px 10px;background:white;color:var(--ink);font:inherit}.monthly-status-filter button{min-height:37px}.monthly-status-note{padding:12px 22px 20px}.monthly-status-card .table-wrap{overflow-x:auto}.attendance-toolbar [aria-current=page]{background:#e5effb;border-color:#92b0d0;color:#245887}@media(max-width:900px){.monthly-status-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.monthly-status-summary{grid-template-columns:repeat(2,minmax(0,1fr));padding:15px;gap:9px}.monthly-status-filter{display:grid;grid-template-columns:1fr 1fr;padding:15px;gap:10px}.monthly-status-filter label:nth-of-type(3){grid-column:1/-1}.monthly-status-filter input,.monthly-status-filter select{width:100%;min-width:0}.monthly-status-note{padding:12px 15px}.monthly-status-card .card-heading{flex-wrap:wrap}}
.circular-filter label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:12px}.circular-filter{align-items:end}.circular-filter label input{width:100%}@media(max-width:650px){.circular-filter{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.circular-filter>label,.circular-filter>input,.circular-filter>select,.circular-filter>button{width:100%;min-width:0}}
.periods-widget,.periods-rows{display:block}.period-row{display:flex;align-items:end;gap:10px;margin:12px 0;padding:12px;background:#f4f7fb;border:1px solid var(--line);border-radius:6px}.workspace-form .period-row label{flex:1;min-width:0;margin:0}.workspace-form .period-row input{width:100%;min-width:0}.period-separator{padding-bottom:10px}.period-remove{flex:none}.period-add{margin-top:8px}@media(max-width:650px){.period-row{flex-wrap:wrap}.period-row label{flex-basis:40%}.period-remove{margin-left:auto}}
.reasons-widget,.reasons-rows{display:block}.reason-row{display:flex;align-items:end;gap:12px;margin:12px 0;padding:12px;background:#f4f7fb;border:1px solid var(--line);border-radius:6px}.workspace-form .reason-row label{flex:1;margin:0;min-width:0}.workspace-form .reason-row select{width:100%;min-width:0}.reason-add{margin-top:8px}
.workflow-search{flex-basis:100%;width:100%;border-top:1px solid var(--line);padding-top:14px}.workflow-search summary{cursor:pointer;color:var(--blue);font-weight:600}.workflow-search-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:15px 0}.workflow-search-fields label{display:flex;flex-direction:column;gap:6px;font-size:12px;min-width:0}.workflow-search-fields input{width:100%;min-width:0}.workflow-search-fields .errorlist{margin:0;padding-left:16px;color:#bd3245}@media(max-width:650px){.workflow-search-fields{grid-template-columns:minmax(0,1fr)}}
.punch-toolbar-live .punch:disabled{background:#e3eaf1;border-color:#c9d4df;color:#7d8b9b;box-shadow:none;opacity:1}

.presence-filters{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin-bottom:16px}.presence-filters label{display:grid;gap:6px;font-weight:600}.presence-filters input,.presence-filters select{border:1px solid #bfcbd8;border-radius:6px;padding:9px;background:#fff;max-width:100%;font:inherit}.presence-table-scroll{overflow-x:auto}.presence-table{width:100%;border-collapse:collapse;min-width:850px}.presence-table th{background:#edf2f8;color:#476079;text-align:left;padding:12px}.presence-table td{padding:14px 12px;border-bottom:1px solid #e2e9f0;vertical-align:top}.presence-badge{display:inline-block;padding:4px 12px;border-radius:20px;background:#edf0f5;white-space:nowrap}.presence-present{background:#dff2eb;color:#12644d}.presence-outside{background:#fff0d3;color:#885900}.presence-departed{background:#e3eafa;color:#304c86}.presence-event{padding:5px 0;max-width:270px;overflow-wrap:anywhere}.presence-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:18px}@media(max-width:600px){.presence-filters{display:grid;grid-template-columns:1fr}.presence-filters input,.presence-filters select{width:100%}.presence-table-scroll{max-width:100%}}
