:root{
  --green-950:#09331f;--green-900:#0a482a;--green-800:#0d6239;--green-700:#147d49;--green-100:#e8f5eb;--green-50:#f6fbf7;
  --ink:#1b281f;--muted:#66736b;--line:#dbe6de;--paper:#fff;--bg:#f2f6f3;--danger:#bc3030;--warning:#9c6509;--blue:#1f68aa;--purple:#7953a8;--pink:#b44875;--shadow:0 10px 25px rgba(26,62,39,.07);--radius:18px;--sidebar:256px;
}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",Meiryo,sans-serif;line-height:1.45}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button{border:0}#app{min-height:100vh}.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.main{min-width:0;padding:28px 30px 64px}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;padding:18px 14px;background:var(--green-950);color:#fff;z-index:15}.brand{display:flex;align-items:center;gap:10px;padding:5px 7px 25px}.brand-logo{display:grid;place-items:center;width:42px;height:42px;padding:6px;border:1px solid rgba(255,255,255,.45);border-radius:12px;background:rgba(255,255,255,.06)}.brand-logo img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.brand b{display:block;font-size:15px;line-height:1.32;letter-spacing:.04em}.brand small{display:block;margin-top:3px;color:#b8d9c2;font-size:9px;letter-spacing:.04em}.nav{display:grid;gap:5px}.nav-button{display:flex;align-items:center;gap:11px;width:100%;padding:11px 12px;border-radius:11px;background:transparent;color:#cbe1d1;text-align:left}.nav-button>span{width:20px;text-align:center;font-size:16px}.nav-button b{font-size:13px}.nav-button em{margin-left:auto;display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#fff0f0;color:var(--danger);font-size:10px;font-style:normal;font-weight:900}.nav-button:hover,.nav-button.active{background:#15663d;color:#fff}.sidebar-user{display:flex;align-items:center;gap:9px;margin-top:auto;padding:10px 8px;border-top:1px solid rgba(255,255,255,.17)}.sidebar-user b{display:block;font-size:12px}.sidebar-user small{display:block;margin-top:2px;color:#b9dac3;font-size:10px}.logout-button{width:100%;margin-top:9px;padding:8px 10px;border:1px solid rgba(255,255,255,.25);border-radius:9px;background:transparent;color:#fff;font-size:11px;font-weight:800}.avatar{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:#d7ebdb;color:var(--green-950);font-size:12px;font-weight:900}.avatar.large{width:40px;height:40px}.avatar.big{width:54px;height:54px;font-size:17px}.mobile-nav,.mobile-appbar{display:none}

.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.page-header h1{margin:0;font-size:25px;line-height:1.25;letter-spacing:.01em}.page-header p{margin:6px 0 0;color:var(--muted);font-size:13px}.header-actions{display:flex;align-items:center;gap:8px}.header-actions select{min-width:108px;padding:10px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font-size:12px;font-weight:800}.button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;gap:6px;padding:9px 12px;border:1px solid transparent;border-radius:10px;font-size:13px;font-weight:850;white-space:nowrap;transition:.15s}.button:hover{transform:translateY(-1px)}.button.primary{background:var(--green-800);box-shadow:0 4px 10px rgba(13,98,57,.16);color:#fff}.button.primary:hover{background:var(--green-700)}.button.secondary{border-color:var(--line);background:#fff;color:var(--ink)}.button.danger{border-color:#f0c8c8;background:#fff2f2;color:#a32727}.button.small{min-height:31px;padding:6px 8px;border-radius:8px;font-size:11px}.text-button{padding:0;background:transparent;color:var(--green-800);font-size:12px;font-weight:850}.card{border:1px solid #e3ece6;border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow)}.pad{padding:18px}.section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.section-title h2,.section-title h3{margin:0;font-size:16px}.section-title p{margin:3px 0 0;color:var(--muted);font-size:12px}.small-muted{color:var(--muted);font-size:11px}.danger-text{color:var(--danger)!important}.empty{display:grid;place-items:center;min-height:104px;padding:18px;text-align:center;color:var(--muted)}.empty i{display:grid;place-items:center;width:38px;height:38px;margin:0 auto 7px;border-radius:50%;background:#edf4ef;font-size:18px;font-style:normal}.empty p{margin:0;font-size:12px}

/* login */
.login-wrap{display:grid;min-height:100vh;place-items:center;padding:28px;background:linear-gradient(135deg,#eff6f0,#f9fbfa)}.login-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(400px,.95fr);width:min(1040px,100%);overflow:hidden;border:1px solid #dce9df;border-radius:24px;background:#fff;box-shadow:0 26px 60px rgba(16,58,33,.12)}.login-visual{min-height:600px;padding:42px;background:linear-gradient(145deg,#09331f,#0c5d37);color:#fff}.login-brand{display:flex;align-items:center;gap:11px}.login-logo{display:grid;place-items:center;width:52px;height:52px;padding:9px;border:1px solid rgba(255,255,255,.6);border-radius:14px;background:rgba(255,255,255,.09)}.login-logo img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.login-brand b{font-size:17px}.login-brand small{display:block;margin-top:2px;color:#bce1c6;font-size:9px;letter-spacing:.1em}.login-copy{margin-top:58px}.login-copy>span{display:inline-block;padding:6px 10px;border-radius:99px;background:rgba(255,255,255,.1);color:#d6efdc;font-size:11px;font-weight:800}.login-copy h1{margin:16px 0 9px;font-size:33px;line-height:1.34;letter-spacing:.02em}.login-copy p{max-width:380px;margin:0;color:#c3dfcb;font-size:13px}.login-steps{display:grid;gap:11px;margin-top:58px}.login-steps>div{display:grid;grid-template-columns:30px 1fr;column-gap:10px;align-items:center}.login-steps i{grid-row:span 2;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#fff;color:var(--green-800);font-size:12px;font-style:normal;font-weight:900}.login-steps b{font-size:13px}.login-steps small{color:#bde1c7;font-size:11px}.login-panel{padding:42px}.eyebrow{color:var(--green-700);font-size:10px;font-weight:900;letter-spacing:.11em}.login-panel h2{margin:8px 0 5px;font-size:27px}.login-panel>p{margin:0 0 19px;color:var(--muted);font-size:13px}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.role-button{display:flex;gap:8px;align-items:flex-start;padding:10px;border:1px solid #dbe5dd;border-radius:11px;background:#fff;text-align:left;color:var(--ink)}.role-button.active{border-color:var(--green-700);background:var(--green-50);box-shadow:0 0 0 2px rgba(20,125,73,.11)}.role-button>span{font-size:16px}.role-button b{display:block;font-size:12px}.role-button small{display:block;margin-top:2px;color:var(--muted);font-size:9px;line-height:1.35}.login-panel .field{margin-top:16px}.login-submit{width:100%;margin-top:16px}.login-note{margin-top:15px;padding:10px;border-radius:10px;background:#f5f8f6;color:#657269;font-size:10px;line-height:1.55}.login-note b{color:#435248}

/* home */
.mobile-home{display:none}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kpi-grid article{padding:17px;border:1px solid #e2ebe4;border-radius:15px;background:#fff;box-shadow:var(--shadow)}.kpi-grid span{display:block;color:var(--muted);font-size:12px;font-weight:800}.kpi-grid b{display:block;margin:7px 0 2px;color:var(--green-800);font-size:31px;line-height:1}.kpi-grid small{color:var(--muted);font-size:10px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(310px,.8fr);gap:16px;margin-top:16px}.stack{display:grid;gap:16px}.flow-guide{padding:13px;border:1px solid #e1ece4;border-radius:14px;background:#fbfefc}.flow-guide p{margin:10px 0 0;color:var(--muted);font-size:11px}.year-plan-message{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr;gap:8px;align-items:center;margin-top:13px;font-size:11px}.year-plan-message b{padding:4px 7px;border-radius:6px;background:var(--green-100);color:var(--green-800)}.year-plan-message span{color:var(--muted)}.list-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:11px 0;border-bottom:1px solid #edf2ee;background:transparent;text-align:left;color:var(--ink)}.list-row:last-child{border-bottom:0}.event-row,.plan-row{cursor:pointer}.row-main{display:flex;align-items:center;min-width:0;gap:9px}.row-main>div{min-width:0}.row-main b{display:block;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.row-main small{display:block;overflow:hidden;margin-top:2px;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.round-icon{display:grid;place-items:center;width:33px;height:33px;border-radius:10px;background:#edf4ef;font-size:15px;font-style:normal}.round-icon.examination{background:#e6f2ff}.round-icon.training{background:#e6f6e9}.round-icon.deadline{background:#fff2de}.round-icon.renewal,.round-icon.alert{background:#ffe9e9}.round-icon.plan{background:#eee9fb}.row-side{display:grid;justify-items:end;gap:2px;color:var(--muted);font-size:10px;text-align:right}.row-side b{font-size:11px;color:var(--ink)}.row-side small{font-size:9px}.status-badge,.priority-badge,.tax-badge{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:3px 7px;border-radius:999px;font-size:10px;font-weight:850;line-height:1.25;white-space:nowrap}.status-muted{background:#edf1f0;color:#5c6861}.status-blue{background:#e6f1fc;color:#2364a0}.status-orange{background:#fff1dc;color:#9c6008}.status-purple{background:#f0eafa;color:#744c9b}.status-pink{background:#fce9f1;color:#a13c68}.status-green{background:#e3f4e7;color:#17763c}.status-red{background:#ffeded;color:#b32929}.priority-a{background:#fdeaea;color:#b32b2b}.priority-b{background:#fff2d9;color:#9c6106}.priority-c{background:#e7f2ff;color:#286aa4}.priority-d{background:#f0ebfa;color:#7850a3}.tax-badge{margin:4px 3px 0 0}.tax-badge i{font-style:normal;opacity:.55}.tax-national{background:#e8f1ff;color:#2666a1}.tax-skilled{background:#f7ebff;color:#7a4d9c}.tax-training{background:#e5f5e8;color:#1f743b}.tax-special{background:#fff1de;color:#a26108}.tax-private{background:#f1edf1;color:#625867}.tax-trail{display:inline-flex;align-items:center;gap:5px;max-width:100%;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.35}.tax-trail b{color:#92a198;font-size:11px}

/* flow */
.approval-stepper{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;position:relative;margin:14px 0 5px}.approval-stepper:before{content:"";position:absolute;top:15px;right:8%;left:8%;height:2px;background:#dfe8e2}.flow-step{position:relative;z-index:1;display:grid;justify-items:center;gap:4px;text-align:center}.flow-step i{display:grid;place-items:center;width:30px;height:30px;border:2px solid #d7e2da;border-radius:50%;background:#fff;color:#87958d;font-size:11px;font-style:normal;font-weight:900}.flow-step b{display:block;font-size:10px;line-height:1.25}.flow-step small{display:block;color:#87958d;font-size:9px}.flow-step.done i{border-color:var(--green-700);background:var(--green-700);color:#fff}.flow-step.done b{color:var(--green-800)}.flow-step.current i{border-color:var(--green-800);background:var(--green-800);box-shadow:0 0 0 5px rgba(13,98,57,.13);color:#fff}.flow-step.current b{color:var(--green-800)}.flow-step.current small{color:var(--green-700);font-weight:850}.flow-step.returned-step i{border-color:var(--danger);background:var(--danger)}.approval-stepper.compact{margin:11px 0}.approval-stepper.compact .flow-step b{font-size:9px}.approval-stepper.compact .flow-step small{font-size:8px}.approval-stepper.compact .flow-step i{width:27px;height:27px;font-size:10px}.approval-stepper.compact:before{top:13px}.flow-explainer{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(520px,1.25fr);gap:20px;align-items:center;padding:18px;border:1px solid #d9e9dd;border-radius:var(--radius);background:linear-gradient(135deg,#eff9f1,#fff)}.flow-explainer span{display:block;color:var(--green-700);font-size:11px;font-weight:900;letter-spacing:.04em}.flow-explainer h2{margin:4px 0;font-size:18px}.flow-explainer p{margin:0;color:var(--muted);font-size:12px}.approval-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:15px}.approval-metrics article{padding:12px;border:1px solid #e2eae4;border-radius:12px;background:#fff}.approval-metrics article.approved{border-color:#b9dec2;background:#f3fbf4}.approval-metrics span{display:block;color:var(--muted);font-size:10px;font-weight:800}.approval-metrics b{display:block;margin-top:3px;font-size:25px;color:var(--green-800)}.approval-inbox{margin-top:16px}.inbox-count{display:grid;place-items:center;min-width:38px;height:28px;border-radius:999px;background:var(--green-100);color:var(--green-800);font-size:12px;font-weight:900}.approval-list{display:grid}.approval-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto 48px;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf2ee;background:transparent;text-align:left;color:var(--ink)}.approval-list-row:last-child{border-bottom:0}.approval-list-row b{display:block;font-size:13px}.approval-list-row small{display:block;overflow:hidden;margin-top:2px;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.approval-list-row>span{color:var(--green-800);font-size:11px;font-weight:800;text-align:right}

/* calendar */
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.view-switch{display:flex;padding:3px;border-radius:10px;background:#e7efe9}.view-switch button{min-width:65px;padding:8px 11px;border-radius:8px;background:transparent;color:#65736b;font-size:12px;font-weight:850}.view-switch button.active{background:#fff;color:var(--green-800);box-shadow:0 2px 5px rgba(22,52,34,.1)}.calendar-legend{display:flex;gap:7px;flex-wrap:wrap}.legend{padding:4px 7px;border-radius:99px;font-size:10px;font-weight:850}.legend.examination{background:#e6f2ff;color:#21629b}.legend.training{background:#e5f5e8;color:#1e743b}.legend.deadline{background:#fff2de;color:#975a00}.legend.renewal{background:#ffe9e9;color:#ae2e2e}.legend.plan{background:#eee9fb;color:#6d4b9b}.annual-calendar{padding:17px;border:1px solid #e2ebe4;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.annual-title{display:flex;justify-content:space-between;margin-bottom:12px}.annual-title h2{margin:0;font-size:18px}.annual-title p{margin:3px 0 0;color:var(--muted);font-size:11px}.annual-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.mini-month{padding:9px;border:1px solid #e1eae3;border-radius:12px;background:#fff}.mini-month-title{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1px 1px 7px;background:transparent;color:var(--ink);text-align:left}.mini-month-title b{font-size:12px}.mini-month-title span{color:var(--muted);font-size:9px}.mini-week{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;color:#8b9790;font-size:7px;letter-spacing:-.07em;text-align:center;white-space:pre}.mini-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-top:4px}.mini-day{position:relative;display:grid;place-items:center;min-height:22px;padding:0;border-radius:5px;background:#fff;color:#66736b;font-size:8px}.mini-day:not(.blank):hover,.mini-day.has-event{background:#f3f8f4;color:var(--green-800)}.mini-day b{font-size:8px}.mini-day .dot{position:absolute;bottom:2px;width:3px;height:3px;border-radius:50%;background:#84948a}.mini-day .dot:nth-of-type(1){left:calc(50% - 5px)}.mini-day .dot:nth-of-type(2){left:50%}.mini-day .dot:nth-of-type(3){left:calc(50% + 5px)}.dot.examination{background:#3180c1}.dot.training{background:#279150}.dot.deadline{background:#e1961e}.dot.renewal{background:#d74b4b}.dot.plan{background:#8865b3}.month-calendar-card{padding:16px;border:1px solid #e2ebe4;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.month-control{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;text-align:center}.month-control>div{min-width:180px}.month-control h2{margin:0;font-size:19px}.month-control small{color:var(--muted);font-size:10px}.month-control select{padding:8px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:12px}.circle-button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--green-800);font-size:22px}.calendar-week,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-week span{padding:7px;border-right:1px solid #e5ede7;border-bottom:1px solid #e5ede7;background:#f6f9f7;color:#718077;font-size:10px;font-weight:850;text-align:center}.calendar-week span:first-child{border-left:1px solid #e5ede7}.month-day{min-height:100px;padding:7px;border-right:1px solid #e5ede7;border-bottom:1px solid #e5ede7;background:#fff}.month-day:nth-child(7n+1){border-left:1px solid #e5ede7}.month-day.other{background:#fafcfa;color:#a7b0aa}.month-day.today>b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--green-800);color:#fff}.month-day>b{display:block;font-size:11px}.day-events{display:grid;gap:3px;margin-top:4px}.calendar-chip{display:flex;align-items:center;gap:3px;max-width:100%;padding:3px;border-radius:5px;background:#eee;color:#345;text-align:left}.calendar-chip i{flex:0 0 auto;width:5px;height:5px;border-radius:50%;background:currentColor}.calendar-chip span{overflow:hidden;font-size:9px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.calendar-chip.examination{background:#e6f2ff;color:#21629b}.calendar-chip.training{background:#e5f5e8;color:#1e743b}.calendar-chip.deadline{background:#fff2de;color:#975a00}.calendar-chip.renewal{background:#ffe9e9;color:#ae2e2e}.calendar-chip.plan{background:#eee9fb;color:#6d4b9b}.more-events{color:var(--muted);font-size:9px;font-weight:800}.month-agenda{display:none}.calendar-list{margin-top:16px}.event-list{display:grid}

/* declaration */
.declaration-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:21px;border:1px solid #d7e8dc;border-radius:var(--radius);background:linear-gradient(135deg,#eef8f0,#fff);box-shadow:var(--shadow)}.declaration-banner span{color:var(--green-700);font-size:11px;font-weight:900}.declaration-banner h2{margin:5px 0;font-size:21px;line-height:1.35}.declaration-banner p{max-width:650px;margin:0;color:var(--muted);font-size:12px}.plan-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.plan-card{padding:15px;border:1px solid #e0eae2;border-radius:15px;background:#fff}.plan-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.person-title{display:flex;align-items:center;gap:9px;min-width:0}.person-title b{display:block;font-size:13px}.person-title small{display:block;margin-top:2px;color:var(--muted);font-size:10px}.plan-card-items{display:grid;gap:7px;margin-top:9px}.plan-card-items>div{padding:8px;border-radius:9px;background:#f7faf8}.plan-card-items b{display:block;font-size:12px}.plan-card-items small{display:block;overflow:hidden;margin-top:4px;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.plan-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid #edf2ee;color:var(--green-800);font-size:12px;font-weight:850}

/* registry */
.tax-filter-card{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:16px;border:1px solid #dce9df;border-radius:var(--radius);background:linear-gradient(135deg,#f1f9f3,#fff);box-shadow:var(--shadow)}.tax-filter-card>div>span{display:block;color:var(--green-700);font-size:10px;font-weight:900;letter-spacing:.08em}.tax-filter-card h2{margin:3px 0 0;font-size:17px}.tax-filter-fields{display:grid;grid-template-columns:140px 140px minmax(220px,1fr);gap:8px;min-width:min(100%,580px)}.tax-filter-fields label{display:grid;gap:3px}.tax-filter-fields small{color:#5c6b62;font-size:10px;font-weight:800}.tax-filter-fields select,.tax-filter-fields input{min-height:38px;padding:8px;border:1px solid #cfded3;border-radius:9px;background:#fff;color:var(--ink);font-size:12px}.registry-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:14px 0}.taxonomy-summary-card{display:flex;align-items:center;gap:7px;min-width:0;padding:10px;border:1px solid #e0eae3;border-radius:12px;background:#fff;color:var(--ink);text-align:left}.taxonomy-summary-card i{font-size:17px;font-style:normal}.taxonomy-summary-card div{min-width:0;flex:1}.taxonomy-summary-card b{display:block;font-size:11px}.taxonomy-summary-card small{display:block;overflow:hidden;margin-top:2px;color:var(--muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.taxonomy-summary-card>strong{font-size:18px}.taxonomy-summary-card>strong small{display:inline;color:inherit;font-size:8px}.taxonomy-summary-card.tax-national{border-color:#c8daf0}.taxonomy-summary-card.tax-skilled{border-color:#e0caed}.taxonomy-summary-card.tax-training{border-color:#c5e5cc}.taxonomy-summary-card.tax-special{border-color:#eed8b9}.taxonomy-summary-card.tax-private{border-color:#ddd6df}.registry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.employee-card{padding:14px;border:1px solid #e0eae2;border-radius:15px;background:#fff;color:var(--ink);text-align:left;box-shadow:0 4px 12px rgba(20,45,31,.04)}.employee-card:hover{border-color:#bedac6}.employee-card-head{display:flex;align-items:center;gap:9px}.employee-card-head>span{margin-left:auto;color:var(--green-700);font-size:24px}.employee-card-head b{display:block;font-size:13px}.employee-card-head small{display:block;margin-top:2px;color:var(--muted);font-size:10px}.employee-card-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:11px;padding:9px 0;border-top:1px solid #edf2ee;border-bottom:1px solid #edf2ee}.employee-card-stats small{display:block;color:var(--muted);font-size:9px}.employee-card-stats b{display:block;overflow:hidden;margin-top:2px;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.credential-chip-row{display:flex;gap:4px;overflow:hidden;margin-top:10px}.credential-chip-row span{padding:3px 6px;border-radius:999px;background:#eff5f0;color:#56655d;font-size:9px;white-space:nowrap}

/* print */
.print-select{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.print-select label{display:grid;gap:4px;color:#536258;font-size:11px;font-weight:850}.print-select select{min-width:260px;padding:9px;border:1px solid #cfdcd2;border-radius:9px;background:#fff}.approved-stamp,.draft-stamp{display:inline-flex;padding:6px 9px;border-radius:8px;font-size:11px;font-weight:900}.approved-stamp{background:#e4f4e8;color:#17783d}.draft-stamp{background:#fff0f0;color:#b32c2c}.print-preview{overflow:hidden;border:1px solid #d7e3da;border-radius:12px;background:#fff}.print-preview-head{display:flex;align-items:center;gap:10px;padding:13px 15px;background:var(--green-800);color:#fff}.print-preview-head img{width:34px;height:34px;object-fit:contain;filter:brightness(0) invert(1)}.print-preview-head b{display:block;font-size:16px}.print-preview-head small{display:block;margin-top:2px;color:#c9e6d0;font-size:10px}.print-preview-head span{margin-left:auto;padding:4px 7px;border:1px solid rgba(255,255,255,.4);border-radius:5px;font-size:10px;font-weight:850}.print-preview-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:13px;border-bottom:1px solid #e5ece7}.print-preview-meta small{display:block;color:var(--muted);font-size:10px}.print-preview-meta b{display:block;margin-top:2px;font-size:12px}.print-preview>h3{margin:15px 14px 8px;font-size:14px}.print-item{display:grid;grid-template-columns:.8fr 1.2fr;gap:15px;margin:0 14px;padding:10px 0;border-top:1px solid #e8eeea}.print-item b{display:block;font-size:12px}.print-item small{display:block;margin-top:4px;color:var(--muted);font-size:10px}.print-item p{margin:2px 0 6px;color:#46534b;font-size:11px}.print-cost{display:flex;justify-content:flex-end;gap:16px;margin:0 14px 14px;padding-top:10px;color:var(--muted);font-size:11px}.print-cost b{color:var(--green-800)}

/* settings */
.taxonomy-explorer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.taxonomy-group{overflow:hidden;border:1px solid #e0e8e2;border-radius:13px}.taxonomy-group summary{display:flex;align-items:center;gap:9px;padding:10px 11px;cursor:pointer;list-style:none}.taxonomy-group summary::-webkit-details-marker{display:none}.taxonomy-group summary>span{font-size:18px}.taxonomy-group summary>div{min-width:0;flex:1}.taxonomy-group summary b{display:block;font-size:13px}.taxonomy-group summary small{display:block;margin-top:1px;color:var(--muted);font-size:10px}.taxonomy-group summary>i{font-size:18px;font-style:normal}.taxonomy-middle-list{display:grid;gap:8px;padding:0 11px 11px}.taxonomy-middle{padding:8px;border-radius:9px;background:#f8faf8}.taxonomy-middle>b{display:block;margin-bottom:5px;font-size:11px}.taxonomy-middle div{display:flex;gap:4px;flex-wrap:wrap}.taxonomy-middle span{padding:3px 5px;border-radius:5px;background:#fff;color:#526158;font-size:9px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.settings-grid h2{margin:0 0 7px;font-size:16px}.settings-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.setup-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.setup-list li{display:grid;grid-template-columns:140px 1fr;gap:10px;padding-bottom:8px;border-bottom:1px solid #edf2ee;font-size:11px}.setup-list li:last-child{border:0;padding-bottom:0}.setup-list b{color:var(--green-800)}.setup-list span{color:var(--muted)}

/* modal/form */
.modal-backdrop{position:fixed;z-index:80;inset:0;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(10,28,17,.45)}.modal{display:flex;flex-direction:column;max-width:620px;max-height:min(91vh,850px);overflow:hidden;border-radius:19px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.25)}.modal.wide{max-width:850px}.modal>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;border-bottom:1px solid #e7eee9}.modal>header h2{margin:0;font-size:17px}.modal-close{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#eff4f0;color:#526158;font-size:22px}.modal-body{overflow:auto;padding:17px 18px}.modal>footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid #e7eee9;background:#fbfdfb}.form-flow{display:grid;gap:11px}.form-section{padding:13px;border:1px solid #e0e9e2;border-radius:13px;background:#fff}.form-section.intro{display:flex;align-items:center;gap:9px;background:#f4faf5}.form-section.intro>i{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:var(--green-800);color:#fff;font-size:17px;font-style:normal}.form-section.intro b{display:block;font-size:12px}.form-section.intro small{display:block;margin-top:2px;color:var(--muted);font-size:10px}.form-section-title{display:flex;gap:9px;align-items:center;margin-bottom:11px}.form-section-title>i{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--green-800);color:#fff;font-size:11px;font-style:normal;font-weight:900}.form-section-title b{display:block;font-size:12px}.form-section-title small{display:block;margin-top:1px;color:var(--muted);font-size:10px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.field{display:grid;gap:4px}.field.full{grid-column:1/-1}.field>span,.field>label{color:#526058;font-size:10px;font-weight:850}.field>span:has(+ input[required])::after,.field>span:has(+ select[required])::after,.field>span:has(+ textarea[required])::after{content:" *";color:var(--danger)}.field input,.field select,.field textarea{width:100%;min-height:39px;padding:8px 9px;border:1px solid #ccd9d0;border-radius:9px;background:#fff;color:var(--ink);outline:0;font-size:12px}.field textarea{min-height:76px;resize:vertical;line-height:1.5}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green-700);box-shadow:0 0 0 3px rgba(20,125,73,.12)}.form-hint{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.4}.attachment-current{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:6px;padding:7px;border-radius:8px;background:#f4f8f5;color:#536157;font-size:10px}.attachment-current label{font-size:10px}.event-detail{display:grid;grid-template-columns:1fr 1fr;gap:10px}.event-detail>div{padding:10px;border-radius:10px;background:#f7faf8}.event-detail .wide-detail{grid-column:1/-1}.event-detail small{display:block;color:var(--muted);font-size:9px}.event-detail b{display:block;margin-top:2px;font-size:12px}.info-box,.return-reason{margin-top:13px;padding:10px;border:1px solid #f1dfad;border-radius:9px;background:#fff9e9;color:#72500d;font-size:11px}.return-reason{border-color:#f4caca;background:#fff3f3;color:#972c2c}.return-reason b{font-size:11px}.return-reason p{margin:3px 0 0}.plan-modal-head,.employee-detail-head{display:flex;align-items:center;justify-content:space-between;gap:11px}.current-owner{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;padding:10px 11px;border-radius:10px;background:#eef8f0;color:var(--green-800);font-size:11px}.current-owner span{color:#577262;font-weight:850}.current-owner.returned{background:#fff1f1;color:var(--danger)}.modal-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 9px}.modal-section-head h3{margin:0;font-size:14px}.modal-section-head>b{color:var(--green-800);font-size:12px}.modal-plan-item{margin-top:8px;padding:11px;border:1px solid #e1e9e3;border-radius:11px}.modal-plan-item h4{margin:0;font-size:13px}.modal-plan-item small{display:block;margin-top:5px;color:var(--muted);font-size:10px}.detail-copy{margin-top:9px;padding-top:8px;border-top:1px solid #edf2ee}.detail-copy b{display:block;margin-top:6px;font-size:10px;color:#3f5045}.detail-copy p{margin:1px 0;color:var(--muted);font-size:11px}.detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.employee-detail-head>div:last-child{display:grid;justify-items:end}.employee-detail-head>div:last-child>b{font-size:24px;line-height:1;color:var(--green-800)}.employee-detail-head>div:last-child small{margin-top:3px;color:var(--muted);font-size:9px}.credential-groups{display:grid;gap:9px}.credential-group{overflow:hidden;border:1px solid #e1e9e3;border-radius:12px}.credential-group summary{display:flex;align-items:center;gap:7px;padding:10px;cursor:pointer;list-style:none}.credential-group summary::-webkit-details-marker{display:none}.credential-group summary>b{font-size:13px}.credential-group summary em{margin-left:auto;padding:3px 7px;border-radius:99px;background:rgba(255,255,255,.6);font-size:10px;font-style:normal;font-weight:900}.credential-group summary>i{font-style:normal}.credential-middle{padding:0 10px 10px}.credential-middle h4{margin:6px 0 6px;color:#536157;font-size:11px}.credential-card{padding:10px;border:1px solid #e4ebe6;border-radius:10px;background:#fff}.credential-card+.credential-card{margin-top:7px}.credential-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.credential-card b{display:block;font-size:12px}.credential-card small{display:block;margin-top:4px;color:var(--muted);font-size:9px}.credential-card p{margin:7px 0 0;color:#56635b;font-size:10px}.attachment-badge{padding:3px 5px;border-radius:5px;background:#eef5f0;color:var(--green-800);font-size:9px;font-weight:850;white-space:nowrap}.credential-actions{display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap;margin-top:8px}

/* print page hidden on screen */
.print-root{display:none}@media print{body{background:#fff}.app-shell,.mobile-nav,.modal-backdrop,#toast-container{display:none!important}.print-root{display:block!important}.print-sheet{width:210mm;min-height:297mm;padding:11mm 12mm;color:#111;font-family:"Yu Gothic",Meiryo,sans-serif}.print-sheet header{display:flex;justify-content:space-between;align-items:center;padding:4mm 5mm;background:#0d6239;color:#fff}.print-sheet header>div{display:flex;align-items:center;gap:4mm;font-size:17pt;font-weight:900}.print-sheet header img{width:14mm;height:14mm;object-fit:contain;filter:brightness(0) invert(1)}.print-sheet header>b{font-size:8.5pt}.print-meta{display:grid;grid-template-columns:repeat(4,1fr);margin-top:3mm;border:1px solid #888}.print-meta>div{display:grid;gap:1mm;padding:3mm;border-right:1px solid #888;font-size:9pt}.print-meta>div:last-child{border-right:0}.print-meta b{font-size:7.5pt;color:#555}.print-sheet h2{margin:4mm 0 1.5mm;padding-bottom:1mm;border-bottom:1px solid #111;font-size:11pt}.print-sheet table{width:100%;border-collapse:collapse;font-size:7.5pt}.print-sheet th,.print-sheet td{padding:2mm;border:1px solid #888;vertical-align:top;text-align:left}.print-sheet th{background:#edf2ee}.print-sheet td hr{margin:1mm 0;border:0;border-top:1px solid #ccc}.print-sheet small{font-size:6.5pt}.print-declaration{min-height:20mm;padding:3mm;border:1px solid #888;font-size:8pt}.print-signs{display:grid;grid-template-columns:repeat(5,1fr);margin-top:5mm}.print-signs>div{display:grid;gap:6mm;min-height:20mm;padding:2mm;border:1px solid #888;border-right:0;font-size:8pt}.print-signs>div:last-child{border-right:1px solid #888}.print-signs span{font-size:7pt;color:#555}}

/* responsive */
@media(max-width:1080px){.annual-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.registry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.registry-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.flow-explainer{grid-template-columns:1fr}.tax-filter-card{display:grid;align-items:start}.tax-filter-fields{min-width:0;width:100%}}
@media(max-width:760px){
  body{font-size:14px}.app-shell{display:block}.sidebar{display:none}.main{padding:0 13px 86px}.mobile-appbar{display:flex;align-items:center;justify-content:space-between;margin:0 -13px 13px;padding:10px 13px;background:var(--green-950);color:#fff}.mobile-brand{display:flex;align-items:center;gap:8px}.mobile-brand>span{display:grid;place-items:center;width:34px;height:34px;padding:5px;border:1px solid rgba(255,255,255,.5);border-radius:10px}.mobile-brand img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.mobile-brand b{display:block;font-size:12px;letter-spacing:.07em}.mobile-brand small{display:block;margin-top:1px;color:#bfdfc7;font-size:8px;letter-spacing:.07em}.mobile-appbar>button{display:grid;place-items:center;width:37px;height:37px;border-radius:11px;background:#fff;color:var(--green-800);font-size:25px}.mobile-nav{position:fixed;z-index:40;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(5,1fr);padding:6px 6px calc(5px + env(safe-area-inset-bottom));border-top:1px solid #dbe5dd;background:rgba(255,255,255,.98);box-shadow:0 -7px 20px rgba(20,45,31,.08)}.mobile-nav button{position:relative;display:grid;place-items:center;gap:2px;min-height:48px;border-radius:10px;background:transparent;color:#87948c}.mobile-nav button>span{font-size:19px}.mobile-nav button small{font-size:9px;font-weight:800}.mobile-nav button.active{color:var(--green-800)}.mobile-nav button.active:before{content:"";position:absolute;top:-6px;width:22px;height:3px;border-radius:999px;background:var(--green-700)}.page-header{align-items:center;margin-bottom:12px}.page-header h1{font-size:18px}.page-header p{display:none}.header-actions{gap:0}.header-actions .button{display:none}.header-actions select{min-width:87px;padding:7px;font-size:10px}.mobile-home{display:block;margin:0 -1px 12px;padding:13px;border:1px solid #d8e9dd;border-radius:15px;background:linear-gradient(135deg,#eff9f1,#fff)}.mobile-home-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.mobile-home-head span{display:block;color:var(--green-700);font-size:9px;font-weight:900;letter-spacing:.08em}.mobile-home-head h2{margin:3px 0 0;font-size:15px;line-height:1.4}.mobile-home-head>b{padding:5px 7px;border-radius:999px;background:var(--green-100);color:var(--green-800);font-size:9px;white-space:nowrap}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.quick-card{display:grid;grid-template-columns:32px 1fr;column-gap:7px;align-items:center;min-height:65px;padding:9px;border:1px solid #dce7df;border-radius:12px;background:#fff;color:var(--ink);text-align:left}.quick-card.strong{border-color:var(--green-700);background:var(--green-800);color:#fff}.quick-card i{grid-row:span 2;display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--green-100);font-size:15px;font-style:normal}.quick-card.strong i{background:rgba(255,255,255,.15)}.quick-card b{font-size:11px}.quick-card small{margin-top:2px;color:var(--muted);font-size:8px}.quick-card.strong small{color:#d3ebda}.next-action{display:grid;grid-template-columns:62px 1fr;gap:7px;margin-top:11px;padding-top:9px;border-top:1px dashed #c9d8cd;font-size:10px}.next-action span{color:var(--muted);font-weight:850}.next-action b{font-weight:750}.kpi-grid{display:none}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:0}.stack{gap:12px}.dashboard-grid .stack:nth-child(2) .card:nth-child(2){display:none}.pad{padding:13px}.section-title{margin-bottom:10px}.section-title h2{font-size:14px}.section-title p{font-size:10px}.flow-guide{padding:10px}.flow-guide p{font-size:10px}.year-plan-message{display:grid;grid-template-columns:auto 1fr;gap:6px;margin-top:11px;font-size:10px}.year-plan-message span{margin-bottom:3px}.list-row{padding:9px 0}.row-main b{font-size:11px}.row-main small{font-size:9px}.round-icon{width:30px;height:30px;font-size:14px}.row-side{font-size:9px}.row-side b{font-size:10px}.status-badge,.priority-badge,.tax-badge{font-size:8.5px}.tax-trail{font-size:8.5px}.approval-stepper{overflow:visible;margin:10px 0}.approval-stepper:before{right:7%;left:7%;top:12px}.flow-step i{width:24px;height:24px;font-size:9px}.flow-step b{font-size:8px;line-height:1.2}.flow-step small{font-size:7px}.approval-stepper.compact .flow-step i{width:23px;height:23px;font-size:8px}.approval-stepper.compact:before{top:11px}.flow-step.current i{box-shadow:0 0 0 3px rgba(13,98,57,.12)}
  .calendar-toolbar{align-items:flex-start;margin-bottom:9px}.view-switch button{min-width:57px;padding:7px 9px;font-size:11px}.calendar-legend{gap:4px;justify-content:flex-end}.legend{padding:3px 5px;font-size:8px}.annual-calendar{padding:11px}.annual-title h2{font-size:15px}.annual-title p{font-size:9px}.annual-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.mini-month{padding:7px}.mini-month-title{padding-bottom:5px}.mini-month-title b{font-size:11px}.mini-month-title span{font-size:8px}.mini-week{font-size:6px}.mini-day{min-height:20px;font-size:7px}.mini-day b{font-size:7px}.month-calendar-card{padding:10px}.month-control{gap:6px}.month-control>div{min-width:118px}.month-control h2{font-size:16px}.month-control small{font-size:8px}.month-control select{padding:6px;font-size:10px}.circle-button{width:30px;height:30px;font-size:19px}.calendar-week span{padding:5px 0;font-size:9px}.month-day{min-height:55px;padding:4px}.month-day>b{font-size:9px}.month-day.today>b{width:18px;height:18px}.day-events{gap:2px;margin-top:2px}.calendar-chip{padding:2px}.calendar-chip span{font-size:7px}.calendar-chip i{width:4px;height:4px}.more-events{font-size:7px}.month-agenda{display:block;margin-top:13px}.month-agenda h3{margin:0 0 5px;font-size:12px}.calendar-list{display:none}
  .declaration-banner{display:grid;padding:14px}.declaration-banner h2{font-size:16px}.declaration-banner p{font-size:10px}.declaration-banner .button{width:100%;font-size:11px}.plan-card-grid{grid-template-columns:1fr;gap:10px}.plan-card{padding:12px}.plan-card-items b{font-size:11px}.plan-card-foot{font-size:11px}
  .flow-explainer{gap:10px;padding:13px}.flow-explainer h2{font-size:15px}.flow-explainer p{font-size:10px}.approval-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:10px}.approval-metrics article{padding:9px}.approval-metrics span{font-size:8px}.approval-metrics b{font-size:20px}.approval-list-row{grid-template-columns:minmax(0,1fr) auto 32px;gap:7px}.approval-list-row b{font-size:11px}.approval-list-row small{font-size:8px}.approval-list-row>span{font-size:9px}.approval-inbox{margin-top:12px}
  .tax-filter-card{display:grid;gap:11px;padding:13px}.tax-filter-card h2{font-size:15px}.tax-filter-fields{grid-template-columns:1fr 1fr;gap:7px}.tax-filter-fields .search-field{grid-column:1/-1}.tax-filter-fields select,.tax-filter-fields input{min-height:37px;font-size:11px}.registry-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:11px 0}.taxonomy-summary-card{padding:8px}.taxonomy-summary-card b{font-size:10px}.taxonomy-summary-card small{font-size:7px}.taxonomy-summary-card>strong{font-size:15px}.registry-grid{grid-template-columns:1fr;gap:8px}.employee-card{padding:12px}.employee-card-stats{margin-top:9px}.employee-card-stats small{font-size:8px}.employee-card-stats b{font-size:10px}.credential-chip-row{margin-top:8px}.credential-chip-row span{font-size:8px}
  .print-select{align-items:flex-end}.print-select select{min-width:0;width:100%;font-size:11px}.print-preview-head{padding:11px}.print-preview-head b{font-size:13px}.print-preview-head small{font-size:8px}.print-preview-head span{font-size:8px}.print-preview-meta{grid-template-columns:repeat(2,1fr);padding:10px}.print-preview-meta b{font-size:11px}.print-item{grid-template-columns:1fr;gap:5px;margin:0 10px}.print-cost{margin:0 10px 10px;gap:8px;font-size:9px}
  .taxonomy-explorer{grid-template-columns:1fr;gap:7px}.taxonomy-group summary{padding:9px}.settings-grid{grid-template-columns:1fr;gap:12px;margin-top:12px}.setup-list li{grid-template-columns:105px 1fr;font-size:10px}.settings-actions{gap:6px}.settings-actions .button{font-size:10px}
  .modal-backdrop{align-items:flex-end;padding:0}.modal,.modal.wide{width:100%;max-width:none;max-height:94vh;border-radius:18px 18px 0 0}.modal>header{padding:13px 14px}.modal>header h2{font-size:15px}.modal-body{padding:13px 14px}.modal>footer{position:sticky;bottom:0;padding:10px 14px;padding-bottom:max(10px,env(safe-area-inset-bottom));background:#fff}.modal>footer .button{flex:1}.form-grid{grid-template-columns:1fr;gap:9px}.field.full{grid-column:auto}.field input,.field select,.field textarea{min-height:40px;font-size:12px}.field textarea{min-height:73px}.form-section{padding:11px}.event-detail{gap:7px}.event-detail>div{padding:8px}.plan-modal-head .status-badge{font-size:8px}.current-owner{display:grid;gap:3px;font-size:10px}.modal-section-head{margin:13px 0 8px}.modal-section-head h3{font-size:13px}.modal-plan-item{padding:9px}.modal-plan-item h4{font-size:12px}.detail-copy p{font-size:10px}.employee-detail-head>div:last-child b{font-size:21px}.credential-card{padding:9px}.credential-card b{font-size:11px}.credential-card p{font-size:9px}.credential-actions .button{font-size:9px}
}

/* v4｜4段階承認・帳票印刷・資格日リマインド */
.approval-card-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:9px;padding-top:9px;border-top:1px dashed var(--line)}
.approval-action-note{display:grid;gap:3px;margin:11px 0;padding:10px;border-radius:10px;background:#f7fbf8;border:1px solid #dcebe0;font-size:11px}.approval-action-note b{color:var(--green-800)}.approval-action-note span{color:var(--muted)}
.approval-metrics-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.reminder-panel{border-color:#d8e8dc}.reminder-on{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:999px;background:#e5f5e8;color:#17763c;font-size:10px;font-weight:900}.reminder-list{display:grid;gap:0}.reminder-list>div{display:grid;gap:2px;padding:9px 0;border-bottom:1px solid #edf2ee}.reminder-list>div:last-child{border-bottom:0}.reminder-list b{font-size:11px}.reminder-list span{color:var(--muted);font-size:10px}.reminder-list.due>div{padding:10px;border-bottom:0;border-radius:10px;background:#fff4e9}.reminder-note{display:block;margin-top:9px;color:var(--muted);font-size:9px;line-height:1.55}
.print-control-card{overflow:hidden}.print-mode-switch{display:flex;gap:8px;margin-bottom:15px;padding:5px;border-radius:12px;background:#f1f5f2}.print-mode-switch button{flex:1;padding:10px;border-radius:9px;background:transparent;color:var(--muted);font-size:12px;font-weight:900}.print-mode-switch button.active{background:#fff;box-shadow:0 2px 8px rgba(22,54,33,.08);color:var(--green-800)}
.company-print-preview{overflow:hidden;border:1px solid #dfe9e2;border-radius:13px;background:#fff}.company-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-bottom:1px solid #e6ece7}.company-summary>div{display:grid;gap:3px;padding:11px;border-right:1px solid #e6ece7}.company-summary>div:last-child{border-right:0}.company-summary small{color:var(--muted);font-size:9px}.company-summary b{color:var(--green-800);font-size:14px}.company-table-wrap{overflow:auto}.company-preview-table{width:100%;border-collapse:collapse;font-size:10px}.company-preview-table th,.company-preview-table td{padding:8px;border-bottom:1px solid #e7ede8;border-right:1px solid #eef2ef;text-align:left;vertical-align:top}.company-preview-table th{background:#f5f9f6;color:#506057;font-size:9px}.company-preview-table small{color:var(--muted);font-size:8px}
.print-signs.four{grid-template-columns:repeat(4,1fr)}
.company-print-sheet{width:210mm;min-height:297mm;padding:10mm;background:#fff;color:#111}.company-print-sheet header{display:flex;align-items:center;justify-content:space-between;padding-bottom:3mm;border-bottom:1.5px solid #11623a}.company-print-sheet header>div{display:flex;align-items:center;gap:3mm;font-size:16pt;font-weight:900}.company-print-sheet header img{width:12mm;height:12mm;object-fit:contain}.company-print-sheet header>b{padding:1.5mm 2mm;border:1px solid #11623a;color:#11623a;font-size:8pt}.company-print-meta{display:grid;grid-template-columns:repeat(4,1fr);margin:4mm 0;border-top:1px solid #888;border-left:1px solid #888}.company-print-meta>div{display:grid;gap:1mm;min-height:13mm;padding:2mm;border-right:1px solid #888;border-bottom:1px solid #888;font-size:8pt}.company-print-meta b{font-size:7pt;color:#555}.company-print-sheet h2{margin:4mm 0 2mm;font-size:10pt}.company-print-sheet table{width:100%;border-collapse:collapse;font-size:7.2pt}.company-print-sheet th,.company-print-sheet td{padding:1.6mm;border:1px solid #888;vertical-align:top;text-align:left}.company-print-sheet th{background:#e7f3ea}.company-print-sheet td small{font-size:6.4pt}.company-print-sheet hr{margin:1mm 0;border:0;border-top:.3px solid #aaa}.company-print-signs{display:grid;grid-template-columns:1fr 1fr;margin-top:5mm;margin-left:auto;width:100mm}.company-print-signs>div{display:grid;gap:8mm;min-height:20mm;padding:2mm;border:1px solid #888;border-right:0;font-size:8pt}.company-print-signs>div:last-child{border-right:1px solid #888}.company-print-signs span{font-size:7pt;color:#555}
@media(max-width:760px){.approval-card-actions{gap:6px}.approval-card-actions .button{flex:1}.approval-metrics-four{grid-template-columns:repeat(2,minmax(0,1fr))}.reminder-panel .section-title{align-items:center}.reminder-panel .section-title p{max-width:210px}.company-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.company-summary>div:nth-child(2n){border-right:0}.company-summary>div:last-child{grid-column:1/-1}.company-preview-table{min-width:680px}.print-mode-switch button{font-size:10px}.company-print-preview{margin:0 -13px;border-right:0;border-left:0;border-radius:0}}
@media print{body[data-print-mode="personal"] .company-print-root{display:none!important}body[data-print-mode="company"] .personal-print-root{display:none!important}body[data-print-mode="company"] .company-print-root{display:block!important}body[data-print-mode="personal"] .personal-print-root{display:block!important}.print-signs.four{grid-template-columns:repeat(4,1fr)}.company-print-root{display:none}.company-print-sheet{display:block!important;box-shadow:none}.company-print-sheet table{page-break-inside:auto}.company-print-sheet tr{page-break-inside:avoid;page-break-after:auto}}


/* v5｜ログイン簡素化・承認担当者設定・履歴・継続運用診断 */
.approval-assignment-card{margin-bottom:14px}.approval-assignment-card .form-grid{margin-top:12px}.continuity-card{margin-bottom:14px;border-color:#d4e4d9}.continuity-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.continuity-grid>div{padding:12px;border-radius:12px;background:#f5f9f6;border:1px solid #e1ece4}.continuity-grid>div:last-child{background:#fff8f0;border-color:#f3e0c7}.continuity-grid b{display:block;margin-bottom:6px;color:#185b38}.continuity-grid ul{display:grid;gap:5px;margin:0;padding-left:18px;color:#526158;font-size:11px;line-height:1.55}.approval-history{display:grid;gap:0;margin:15px 0;border:1px solid #dae7de;border-radius:12px;overflow:hidden}.approval-history h3{margin:0;padding:10px 12px;background:#f4f8f5;color:#1d5f3d;font-size:12px}.approval-history>div{display:grid;gap:3px;padding:9px 12px;border-top:1px solid #e7efe9}.approval-history b{font-size:10px;color:#4e5f54}.approval-history span{font-size:11px;font-weight:800}.approval-history small{font-size:10px;color:#6a756d}.login-panel .field{margin-top:16px}.login-panel .login-submit{margin-top:12px}
@media(max-width:760px){.continuity-grid{grid-template-columns:1fr;gap:8px}.continuity-grid>div{padding:10px}.continuity-grid ul{font-size:10px}.approval-assignment-card .form-grid{gap:9px}.approval-history h3{font-size:11px}.approval-history span{font-size:10px}}
