/* Fail closed, including when JS or the SDK cannot load. */
.cloud-page .app-shell,.cloud-page #inkQuickControls{display:none}
.cloud-page[data-cloud-ready="true"] .app-shell{display:flex}
.cloud-page[data-cloud-ready="true"] #cloudGate{display:none}
.cloud-page[data-cloud-ready="true"] #inkQuickControls:not([hidden]){display:flex}
.cloud-page .source-sheet{display:none}
#cloudGate{min-height:100vh;display:grid;place-items:center;padding:28px 16px;background:radial-gradient(circle at 10% 10%,#e7efd9,transparent 45%),#f6f8f2}
.cloud-card{background:#fff;border:1px solid #dce5d2;border-radius:22px;padding:38px;max-width:490px;width:100%;box-shadow:0 18px 70px #536c3b12}
.cloud-logo{font-weight:800;font-size:24px;letter-spacing:-1px;color:#364b34;margin-bottom:28px}
.cloud-logo span{color:#829960}
.cloud-card h1{font-size:25px;line-height:1.5;margin:12px 0}
.cloud-card p{line-height:1.9;font-size:14px;color:#64725f}
.cloud-card label,.cloud-invite label{display:grid;gap:7px;font-size:13px;font-weight:600;margin:18px 0}
.cloud-card input{width:100%;padding:13px;border:1px solid #c9d6bc;border-radius:8px;font-size:16px}
.cloud-card .primary-btn{width:100%;justify-content:center;margin-top:10px}
.cloud-card .cloud-step{font-size:11px;letter-spacing:2px;color:#83956d;font-weight:700}
.cloud-message{white-space:pre-line;font-size:13px;line-height:1.7;color:#8c372e;min-height:24px;margin-top:14px}
.cloud-card .cloud-note{font-size:12px;border-top:1px solid #e4eadc;padding-top:18px;margin-top:24px}
.cloud-card .cloud-check{display:flex;align-items:flex-start;font-weight:400;line-height:1.7}
.cloud-check input{width:auto;margin-top:5px}
.cloud-mfa-image{display:block;width:180px;height:180px;margin:16px auto}
.cloud-mfa-secret{overflow-wrap:anywhere;font:12px monospace;background:#f2f5ed;padding:10px}
.cloud-bar{border:1px solid #d4dfc6;border-radius:12px;padding:14px 18px;background:#eef4e6;margin-bottom:18px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:13px}
.cloud-bar strong{margin-right:auto;color:#30472e}
.cloud-bar .cloud-state{font-size:12px;font-weight:700}
.cloud-bar[data-state="error"]{background:#fff1ec;border-color:#e4a490}
.cloud-bar button{font-size:12px;padding:7px 10px}
.cloud-admin{padding:24px;margin-bottom:22px}
.cloud-admin h2{margin:5px 0 8px}
.cloud-admin-header{display:flex;justify-content:space-between;align-items:center;gap:16px}
.cloud-admin .section-kicker{color:#7d9362}
.cloud-search{width:100%;margin:18px 0 12px;padding:12px 14px;background:#fafcf7;border:1px solid #d3dec8;border-radius:8px;color:#344831}
.cloud-invite input{width:100%;padding:11px;border:1px solid #d3dec8;border-radius:7px;font-size:15px}
.cloud-customer-list{display:grid;gap:8px;max-height:330px;overflow:auto}
.cloud-customer{display:flex;text-align:left;justify-content:space-between;align-items:center;gap:14px;width:100%;border:1px solid #dbe4d2;border-radius:10px;padding:13px 15px;background:#fff;color:#344831;cursor:pointer}
.cloud-customer[aria-pressed="true"]{border:2px solid #66834b;background:#f1f6e9}
.cloud-customer small{display:block;font-size:11px;font-weight:400;color:#657660;margin-top:4px;overflow-wrap:anywhere}
.cloud-customer .cloud-date{font-size:11px;text-align:right;flex-shrink:0}
.cloud-invite{margin-top:18px;border-top:1px solid #e1e8d8;padding-top:16px}
.cloud-invite summary{cursor:pointer;font-size:13px;font-weight:700}
.cloud-invite form{display:grid;grid-template-columns:1fr 1.5fr auto;gap:12px;align-items:end}
.cloud-invite label{margin:12px 0 0}
.cloud-invite button{margin-bottom:0;min-height:43px}
.cloud-qr-register form{grid-template-columns:1fr auto auto}
.cloud-entry-choices{display:flex;gap:8px;margin:16px 0}
.cloud-entry-choices button{flex:1;padding:12px;border:1px solid #d4dfc6;border-radius:8px;background:#fff;color:#4d6340;cursor:pointer}
.cloud-entry-choices button[aria-pressed="true"]{background:#edf4e6;border:2px solid #6e8956;font-weight:700}
.cloud-line-intro{padding:18px;background:#f0f7ee;border-radius:12px;margin:18px 0}
#copyLINEInvite{width:100%;justify-content:center;background:#16823c}
#lineMessagePreview summary{font-size:13px;cursor:pointer;margin:16px 0 8px}
#lineInviteText{width:100%;font-size:13px;line-height:1.7;border:1px solid #d4dfc6;border-radius:8px;padding:12px;resize:vertical}
.cloud-card a.primary-btn{display:flex;justify-content:center;text-decoration:none}
#qrStartButton[hidden],#entryQRPanel[hidden],#entryLINEPanel[hidden]{display:none}
.cloud-legacy-login summary{font-size:13px;color:#536948;cursor:pointer;padding:12px 0}
.cloud-admin-entry{display:block;font-size:12px;margin-top:24px;color:#617a4d}
#customerQRDialog{width:min(460px,calc(100vw - 28px));padding:26px;border:1px solid #d4dfc6;border-radius:18px;color:#344831}
#customerQRDialog::backdrop{background:#21351e88}
#customerQRDialog h2{font-size:20px}
#customerQRDialog p{font-size:14px;line-height:1.8}
#customerQRDialog .input-hint{font-size:12px}
#customerQRImage{display:block;max-width:100%;height:auto;margin:0 auto}
.cloud-qr-name{font-size:18px!important;font-weight:700;text-align:center}
.cloud-home-tip{font-size:12px;color:#536948;margin:0 0 18px;padding:10px 14px;border:1px dashed #cbd8bf;border-radius:10px}
.cloud-home-tip summary{cursor:pointer;font-weight:600}
.cloud-home-tip p{line-height:1.8}
.cloud-customer-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.cloud-empty{padding:18px 0;color:#7b8970;font-size:13px}
.cloud-history{margin-top:18px;font-size:13px}
.cloud-history ol{padding-left:20px;max-height:300px;overflow:auto}
.cloud-history li{padding:10px 0;border-bottom:1px solid #e1e7d9;line-height:1.8}
.cloud-history button{font-size:12px;margin-left:10px}
.cloud-history pre{white-space:pre-wrap;font:12px/1.8 sans-serif;max-height:160px;overflow:auto}
.cloud-page:not([data-diary-selected="true"]) .quick-entry,.cloud-page:not([data-diary-selected="true"]) .summary-grid,.cloud-page:not([data-diary-selected="true"]) .sheet-panel{display:none}
.cloud-page:not([data-diary-selected="true"]) :is(#openRecord,#navRecord,#settingsBtn,#mobileSettings,#backupBtn,#cloudDraft,#cloudRefresh){visibility:hidden}
@media(max-width:700px){.cloud-card{padding:28px 22px}.cloud-admin{padding:18px}.cloud-invite form{grid-template-columns:1fr}.cloud-bar{padding:12px}.cloud-customer{align-items:flex-start}.cloud-customer .cloud-date{max-width:95px}.cloud-admin-header{align-items:flex-start}}
@media print{#cloudBar,#adminPanel,#cloudGate{display:none!important}}

.cloud-delete-button{color:#9f332f;border-color:#d9a9a3}
.primary-btn.cloud-delete-button{background:#a63732;color:white;border:1px solid #a63732}
.primary-btn.cloud-delete-button:disabled{opacity:.45;cursor:not-allowed}
.cloud-delete-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:18px}
#customerDeleteDialog{width:min(620px,calc(100% - 24px))}
