:root{font-family:system-ui,'Noto Sans JP',sans-serif;color:#19372b;background:#f3f6f3;font-size:16px}*{box-sizing:border-box}body{margin:0}main{width:min(100%,560px);margin:0 auto;padding:24px 16px 40px}header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:6px 0 24px}.brand{font-weight:800;font-size:20px;margin:0}.brand span{display:block;font-size:14px;color:#53675b}.badge{font-size:12px;background:#e2ede4;border-radius:20px;padding:7px 10px;white-space:nowrap}.card{background:white;border:1px solid #dce5de;border-radius:20px;padding:26px 24px;box-shadow:0 10px 30px #17322608}h1{font-size:23px;margin:0 0 12px;line-height:1.5}.sub{color:#52655a;font-size:14px;line-height:1.7}.tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:22px 0}button{font:inherit;cursor:pointer;min-height:48px;border:1px solid #c8d6cd;background:#edf2ee;color:#244635;border-radius:10px;padding:12px;line-height:1.4}button[aria-selected=true],.primary{background:#226a47;color:white;border-color:#226a47;font-weight:700}.primary{width:100%;margin-top:10px}button:disabled{opacity:.65;cursor:wait}label{display:block;font-weight:650;margin:18px 0 8px}input{width:100%;min-width:0;min-height:50px;font:inherit;border:1px solid #899e90;border-radius:10px;padding:12px;background:white;color:#19372b}input:focus,button:focus-visible{outline:3px solid #c38f37;outline-offset:3px}#form-message,#account-message{line-height:1.6;overflow-wrap:anywhere}#form-message.error{color:#a42525}#form-message:empty{display:none}.footnote{margin-bottom:0}aside{font-size:13px;color:#5f7166;line-height:1.7;padding:12px 5px}#connection{font-weight:650}.notice{background:#fff6df;border:1px solid #e1cd95;border-radius:12px;padding:16px;margin:20px 0;line-height:1.7}#user-email{overflow-wrap:anywhere}[hidden]{display:none!important}@media(max-width:350px){main{padding:16px 12px}.card{padding:20px 16px}h1{font-size:21px}.tabs button{font-size:14px}}
.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.summary-cell{border:1px solid #dce5de;border-radius:12px;padding:14px;overflow-wrap:anywhere}.summary-cell span{font-size:13px;display:block}.summary-cell strong{display:block;font-size:24px;margin-top:8px}.connected{color:#226a47;font-weight:700}.farm-context h2{font-size:21px}
select{width:100%;min-height:48px;font:inherit;border:1px solid #899e90;border-radius:10px;padding:10px}fieldset{margin:20px 0;border:1px solid #c8d6cd;border-radius:10px;min-width:0}fieldset input[type=checkbox]{width:22px;min-height:22px;vertical-align:middle}article p{overflow-wrap:anywhere}

.integrated main{max-width:1100px}.integrated #account{padding:12px}.work-frame{display:block;width:100%;height:calc(100dvh - 170px);min-height:540px;border:0}.work-frame[inert]{opacity:.55;pointer-events:none}.sync-warning{background:#fff0cd;color:#603f0b;padding:10px;overflow-wrap:anywhere}.sync-tools{display:flex;gap:8px;flex-wrap:wrap}
/* Authenticated worker view; no fixed overlays on small phones. */
.worker-cloud {max-width:760px;margin:auto;overflow-wrap:anywhere}
.worker-cloud label {display:block;margin:12px 0}
.worker-cloud input,.worker-cloud select {max-width:100%;box-sizing:border-box}
.worker-cloud input[type=checkbox] {width:auto;margin-left:12px}
.worker-card {border:1px solid #ccd8d1;border-radius:12px;padding:16px;margin:12px 0}
.worker-controls {display:flex;gap:8px;flex-wrap:wrap}
.worker-controls button {flex:1;min-width:100px}
.worker-rows {display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px}
.worker-rows button {min-width:0;padding:10px 4px;font-size:14px;background:#eef1ef;color:#1c3528}
.worker-rows .has-record {background:#cee8d8}
.worker-rows [aria-pressed=true] {outline:3px solid #163e2b;outline-offset:-3px}
.worker-cloud button {min-height:44px;white-space:normal}
.worker-save {padding:10px;background:#edf4ef;border-radius:8px}
.install-box{margin:0 0 20px}.install-box button{width:100%;background:#e1efe5;font-weight:700}.install-box p{margin:6px 0}
.qr-card{border:1px solid #c8d6cd;border-radius:14px;padding:16px;background:#fff;text-align:center;color:#111;overflow-wrap:anywhere}.qr-card svg{display:block;width:min(100%,320px);height:auto;margin:auto}.qr-card h3{font-size:24px;margin:4px}.qr-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.qr-actions button{flex:1;min-width:120px}
#work-home h3{margin-top:28px}details{margin:14px 0}summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:650}
.remember-worker{display:flex;gap:10px;align-items:center;font-size:14px;font-weight:400}.remember-worker input{width:22px;height:22px;min-height:22px;flex-shrink:0}
@media print{body:has(.qr-print-target) *:not(.qr-print-target):not(.qr-print-target *):not(:has(.qr-print-target)){display:none!important}.qr-print-target{width:90mm;padding:8mm;border:1px solid #aaa;break-inside:avoid}.qr-print-target svg{width:65mm;height:65mm}.qr-print-target .sub{font-size:11px}body,main{background:white;margin:0;padding:0}.card:has(.qr-print-target){border:0;padding:0;box-shadow:none} }
