body{margin:0;background:#0b1220;color:#e5ecf6;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Segoe UI,sans-serif}button,input{font:inherit}.app-root,.plugin-shell{min-height:100vh}.plugin-shell{max-width:1240px;margin:0 auto;padding:24px 16px 48px}.pin-gate-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px}.pin-gate-card,.hero-panel,.content-card,.dialog-card{background:#0c1422e0;border:1px solid rgba(122,149,184,.2);border-radius:18px;box-shadow:0 20px 60px #00000040}.pin-gate-card{width:min(520px,100%);padding:28px 24px 24px}.pin-gate-title{margin-top:10px;font-size:30px;line-height:1.2}.pin-gate-desc,.pin-gate-tip{margin-top:12px;color:#95a7c2}.pin-gate-tip{text-align:center}.pin-gate-error{margin-top:12px;text-align:center}.pin-slot-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:24px}.pin-slot{height:62px;border-radius:16px;border:1px solid rgba(122,149,184,.25);background:#09101cf5;display:flex;align-items:center;justify-content:center;font-size:28px;color:#8ab4ff}.pin-slot-filled{border-color:#8ab4ff8f;background:#2a6cf029}.pin-keypad{margin-top:20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.keypad-btn{min-height:72px;border:0;border-radius:18px;background:#ffffff14;color:#e5ecf6;font-size:24px;font-weight:600;cursor:pointer}.keypad-btn-backspace{background:#ffffff1a;font-size:18px}.keypad-btn-confirm{background:linear-gradient(135deg,#2a6cf0,#61a4ff);color:#fff;font-size:18px}.hero-panel{padding:24px;margin-bottom:20px}.content-card{padding:20px;margin-bottom:20px}.hero-top-row,.card-title-row,.order-toolbar,.pagination-bar,.query-bar,.upload-select-row,.upload-progress-header,.upload-action-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.hero-meta-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.hero-meta-tag,.upload-stage-pill{padding:6px 12px;border-radius:999px;background:#41619138;font-size:13px}.eyebrow{margin:0;color:#8ab4ff}h1,h2,p{margin:0}.card-header{margin-bottom:16px}.field-input{width:100%;box-sizing:border-box;padding:10px 12px;border-radius:10px;border:1px solid rgba(122,149,184,.25);background:#09101cf5;color:#e5ecf6}.search-input{max-width:360px}.primary-btn,.ghost-btn,.link-btn,.photo-delete-btn,.keypad-btn{transition:opacity .2s ease,transform .2s ease}.primary-btn,.ghost-btn,.link-btn{border:0;border-radius:10px;cursor:pointer;padding:10px 14px}.primary-btn{background:#2a6cf0;color:#fff}.ghost-btn{background:#ffffff14;color:#e5ecf6}.link-btn{padding:0;background:transparent;color:#8ab4ff}.link-btn:disabled,.ghost-btn:disabled,.primary-btn:disabled,.photo-delete-btn:disabled,.keypad-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.order-table{width:100%;border-collapse:collapse}.order-table th,.order-table td{padding:12px 10px;border-bottom:1px solid rgba(122,149,184,.14);text-align:left;font-size:14px}.table-shell{overflow-x:auto}.status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.status-card-item{padding:12px;border-radius:12px;background:#ffffff0a}.status-card-label{display:block;font-size:12px;color:#95a7c2;margin-bottom:6px}.status-card-value{font-size:14px;word-break:break-all}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.dialog-mask{position:fixed;inset:0;background:#0000008f;display:flex;align-items:center;justify-content:center;padding:16px;z-index:20}.dialog-card{width:min(680px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:20px}.upload-dialog-card,.photo-dialog-card{width:min(960px,100%)}.error-text,.empty-cell,.order-search-summary{color:#95a7c2}.success-text{color:#7fd7a3}.action-group{display:flex;flex-wrap:wrap;gap:10px}.hidden-input{display:none}.photo-dialog-desc{margin-top:10px;color:#95a7c2}.upload-dropzone{margin-top:16px;padding:28px 18px;border:1px dashed rgba(138,180,255,.45);border-radius:16px;background:#ffffff08;text-align:center;cursor:pointer;outline:none}.upload-dropzone-active{border-color:#8ab4ff;background:#4161912e}.upload-dropzone-title{font-size:15px}.upload-dropzone-sub{margin-top:8px;color:#95a7c2;font-size:13px}.upload-preview-card{margin-top:16px;overflow:hidden;border-radius:16px;background:#ffffff0a;border:1px solid rgba(122,149,184,.14)}.upload-preview-image{display:block;width:100%;max-height:360px;object-fit:contain;background:#09101cf5}.upload-preview-meta{padding:12px}.upload-preview-name{font-size:14px;word-break:break-all}.upload-preview-sub{margin-top:6px;font-size:12px;color:#95a7c2}.upload-progress-block{margin-top:16px}.upload-progress-track{margin-top:8px;height:10px;border-radius:999px;overflow:hidden;background:#ffffff14}.upload-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#2a6cf0,#61a4ff)}.upload-progress-fill-loading{background:linear-gradient(90deg,#2a6cf0,#61a4ff,#2a6cf0);background-size:200% 100%;animation:progress-flow 1.2s linear infinite}.upload-progress-title{display:flex;align-items:center;gap:8px}.success-inline-text{color:#7fd7a3}.photo-grid{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.photo-card{overflow:hidden;border-radius:14px;background:#ffffff0a;border:1px solid rgba(122,149,184,.14)}.photo-image{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover;background:#09101cf5}.photo-meta{padding:12px}.photo-progress-block{margin-bottom:12px}.photo-name{font-size:14px;word-break:break-all}.photo-sub{margin-top:6px;font-size:12px;color:#95a7c2}.photo-link{display:inline-block;margin-top:8px;color:#8ab4ff;text-decoration:none}.photo-delete-btn{display:block;margin-top:8px;padding:0;border:0;background:transparent;color:#ff8f8f;cursor:pointer}@keyframes progress-flow{0%{background-position:200% 0}to{background-position:0 0}}@media(max-width:768px){.plugin-shell{padding-top:18px}.query-bar,.order-toolbar,.pagination-bar,.card-title-row,.upload-select-row,.upload-progress-header,.upload-action-row{flex-direction:column;align-items:stretch}.status-grid{grid-template-columns:1fr}.pin-slot-row{gap:8px}.pin-slot{height:54px}.keypad-btn{min-height:64px;font-size:22px}}
