kintex/stitch_kintex_ai_system_architect/scr_m12/code.html

294 lines
16 KiB
HTML

<!DOCTYPE html>
<html lang="ko"><head>
<meta charset="utf-8"/>
<meta content="width=device-width, initial-scale=1.0" name="viewport"/>
<title>KINTEX AI System - SCR-M12</title>
<script src="https://cdn.tailwindcss.com?plugins=forms,container-queries"></script>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&amp;family=Geist:wght@500;600&amp;display=swap" rel="stylesheet"/>
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&amp;display=swap" rel="stylesheet"/>
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&amp;display=swap" rel="stylesheet"/>
<style>
.material-symbols-outlined {
font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}
.ai-border-glow {
border: 1.5px solid #6D4AFF;
box-shadow: 0 0 12px rgba(109, 74, 255, 0.15);
}
.glass-panel {
background: rgba(255, 255, 255, 0.85);
backdrop-filter: blur(8px);
}
body {
font-family: 'Inter', sans-serif;
background-color: #f9f9ff;
color: #141b2c;
user-select: none;
-webkit-tap-highlight-color: transparent;
}
</style>
<script id="tailwind-config">
tailwind.config = {
darkMode: "class",
theme: {
extend: {
"colors": {
"surface-container": "#e9edff",
"on-surface-variant": "#414751",
"primary-fixed-dim": "#a2c9ff",
"outline-variant": "#c1c7d3",
"surface-container-lowest": "#ffffff",
"on-tertiary-fixed-variant": "#005236",
"secondary-fixed-dim": "#c9bfff",
"on-secondary-fixed-variant": "#4500d8",
"on-tertiary-container": "#8ef7c3",
"on-primary-fixed-variant": "#004881",
"outline": "#717782",
"on-primary": "#ffffff",
"error-container": "#ffdad6",
"primary-fixed": "#d3e4ff",
"surface-dim": "#d2daf0",
"on-secondary": "#ffffff",
"primary-container": "#0066b3",
"surface-variant": "#dbe2f9",
"secondary": "#5427e6",
"on-secondary-fixed": "#1b0063",
"background": "#f9f9ff",
"on-tertiary": "#ffffff",
"on-background": "#141b2c",
"inverse-on-surface": "#edf0ff",
"surface-container-highest": "#dbe2f9",
"on-surface": "#141b2c",
"on-error-container": "#93000a",
"primary": "#004e8b",
"surface": "#f9f9ff",
"on-tertiary-fixed": "#002113",
"surface-tint": "#0060a9",
"inverse-surface": "#293041",
"on-error": "#ffffff",
"error": "#ba1a1a",
"tertiary": "#00583b",
"surface-container-high": "#e0e8ff",
"secondary-fixed": "#e5deff",
"tertiary-container": "#00734e",
"on-primary-fixed": "#001c38",
"secondary-container": "#6d4aff",
"on-primary-container": "#d2e3ff",
"tertiary-fixed": "#8ef7c4",
"surface-container-low": "#f1f3ff",
"surface-bright": "#f9f9ff",
"on-secondary-container": "#f3edff",
"inverse-primary": "#a2c9ff",
"tertiary-fixed-dim": "#72daa9"
},
"borderRadius": {
"DEFAULT": "0.125rem",
"lg": "0.25rem",
"xl": "0.5rem",
"full": "0.75rem"
},
"spacing": {
"stack-sm": "8px",
"container-padding": "24px",
"base": "4px",
"stack-md": "16px",
"stack-lg": "24px",
"gutter": "16px"
},
"fontFamily": {
"label-md": ["Geist"],
"display-lg-mobile": ["Inter"],
"body-sm": ["Inter"],
"headline-md": ["Inter"],
"label-xs": ["Geist"],
"display-lg": ["Inter"],
"body-base": ["Inter"],
"title-sm": ["Inter"]
},
"fontSize": {
"label-md": ["12px", {"lineHeight": "16px", "letterSpacing": "0.02em", "fontWeight": "600"}],
"display-lg-mobile": ["28px", {"lineHeight": "36px", "fontWeight": "700"}],
"body-sm": ["13px", {"lineHeight": "18px", "fontWeight": "400"}],
"headline-md": ["24px", {"lineHeight": "32px", "fontWeight": "600"}],
"label-xs": ["11px", {"lineHeight": "14px", "fontWeight": "500"}],
"display-lg": ["36px", {"lineHeight": "44px", "letterSpacing": "-0.02em", "fontWeight": "700"}],
"body-base": ["14px", {"lineHeight": "20px", "fontWeight": "400"}],
"title-sm": ["18px", {"lineHeight": "28px", "fontWeight": "600"}]
}
}
}
}
</script>
</head>
<body class="bg-surface">
<!-- Top App Bar -->
<header class="fixed top-0 w-full z-50 flex justify-between items-center px-container-padding h-16 bg-surface border-b border-outline-variant">
<div class="flex items-center gap-3">
<button class="material-symbols-outlined text-on-surface-variant hover:bg-surface-container-low transition-colors p-2 rounded-full">arrow_back</button>
<h1 class="font-headline-md text-headline-md text-primary font-bold">검수 및 승인</h1>
</div>
<button class="material-symbols-outlined text-on-surface-variant hover:bg-surface-container-low transition-colors p-2 rounded-full">filter_list</button>
</header>
<!-- Main Content Canvas -->
<main class="pt-16 pb-32">
<!-- Segmented Control -->
<nav class="flex p-4 gap-1 bg-surface-container-low sticky top-16 z-40">
<button class="flex-1 py-2 text-center rounded-lg bg-primary text-on-primary font-label-md text-label-md transition-all shadow-sm">
대기 중 <span class="ml-1 opacity-80">12</span>
</button>
<button class="flex-1 py-2 text-center rounded-lg text-on-surface-variant hover:bg-surface-container font-label-md text-label-md transition-all">완료</button>
<button class="flex-1 py-2 text-center rounded-lg text-on-surface-variant hover:bg-surface-container font-label-md text-label-md transition-all">전체</button>
</nav>
<div class="px-4 mt-4 space-y-4">
<!-- Active Card (Detailed View Trigger) -->
<div class="bg-white border-2 border-primary rounded-xl overflow-hidden shadow-md">
<div class="p-4 space-y-3">
<div class="flex justify-between items-start">
<div class="flex items-center gap-2">
<span class="material-symbols-outlined text-primary text-[20px]">description</span>
<span class="font-label-md text-label-md text-on-surface-variant">신고서류 · 부스배치도</span>
</div>
<div class="px-2 py-0.5 bg-error text-white rounded text-[10px] font-bold">D-5</div>
</div>
<div>
<h3 class="font-title-sm text-title-sm text-on-surface">(주)테크솔루션</h3>
<p class="text-body-sm text-on-surface-variant mt-1">2024년 KINTEX 월드박람회</p>
</div>
<div class="flex gap-2 items-center">
<span class="px-2 py-1 rounded bg-surface-variant text-on-surface-variant text-label-xs font-semibold">검수 중</span>
<div class="flex items-center gap-1 text-[#6D4AFF]">
<span class="material-symbols-outlined text-[16px]" style="font-variation-settings: 'FILL' 1;">auto_awesome</span>
<span class="text-label-xs font-bold">AI 분석 완료</span>
</div>
</div>
</div>
<!-- Expanded Detail Section -->
<div class="bg-surface-container-low border-t border-outline-variant p-4 space-y-4">
<!-- PDF Preview / Blueprint -->
<div class="relative w-full aspect-[4/3] bg-white rounded-lg border border-outline-variant overflow-hidden group">
<div class="absolute inset-0 flex flex-col items-center justify-center p-6 bg-[#f0f4ff]/50">
<div class="absolute inset-0 bg-cover bg-center opacity-40 grayscale group-hover:grayscale-0 transition-all" data-alt="A clean, technical blueprint of a professional exhibition booth layout with geometric dimensions, structural lines, and numbered zones. The style is minimalist and architectural, using light blue and gray tones against a white background to convey precision and technical clarity in an industrial exhibition hall context." style="background-image: url('https://lh3.googleusercontent.com/aida-public/AB6AXuC-GhJb2kUuJ9H62Lx8bLuZ-VuSVE43Pw9V5LK6YhW39clM_MWe3iyegKkF6JBG2VvXH7aB_lDUuhrSrR7V38KzEpeUEq-ZeuIyDRwmsINWJgFKFUS3TrQG1Gwq-E33mnzxhcNpgzoPCHAfuVc9ddr3nEMsPrL3KWFTOuZe3CiBjvLQee5wEjmUeXi-bNeVzlTmkfGwEXwwXgAHRzcqsWzcSwa7DidoZtajtqZuV7mGEyHgaOrUWhlC-ilVsJ__lSzcSPp2z74MWV4')"></div>
<div class="z-10 flex flex-col items-center">
<span class="material-symbols-outlined text-primary text-[48px] mb-2">picture_as_pdf</span>
<p class="font-label-md text-label-md text-on-surface">부스배치도_A102.pdf</p>
<p class="text-label-xs text-on-surface-variant opacity-70">1.2 MB • Ver 1.2</p>
</div>
</div>
<button class="absolute bottom-3 right-3 bg-white/90 p-2 rounded-full shadow-lg border border-outline-variant">
<span class="material-symbols-outlined text-on-surface-variant">zoom_in</span>
</button>
</div>
<!-- AI Summary Card -->
<div class="ai-border-glow bg-white rounded-xl p-4 space-y-3 relative overflow-hidden">
<div class="absolute top-0 right-0 p-1 bg-[#6D4AFF] text-white rounded-bl-lg">
<span class="material-symbols-outlined text-[14px]">auto_awesome</span>
</div>
<div class="flex items-center gap-2">
<img alt="AI Agent" class="w-6 h-6 object-contain" src="https://lh3.googleusercontent.com/aida/AP1WRLu1SFz3uW8s6iC8BUAS9XvAFoM_7LQZUzR-UgorcHCSIZ_uRCF-ZTLQnQbNUG13WdRaQDX_3m0ewu6jxJ2Ie-gQvwFXyYdy3ZIxhkl0hJ2VGRZF6Iul1GgmSKzO5x92HASTCa0m0XzXjctyxy5aRgxOTOxhzl-Qz9P5jTlRzXngIWh6bCNZdaVEIxd9H6a2fDdToHYg0gowaU93SV2P5YbT0-8ShD0eeNiQEFHXn4HcsQUCrsiacEeGDZY"/>
<h4 class="font-label-md text-label-md text-[#6D4AFF]">AI 검수 요약</h4>
</div>
<ul class="space-y-2">
<li class="flex items-start gap-2">
<span class="material-symbols-outlined text-error text-[18px]">warning</span>
<div class="flex-1">
<p class="text-body-sm font-semibold text-on-surface">소방 통로 확보 미흡 (1.2m)</p>
<p class="text-label-xs text-on-surface-variant">규정상 최소 2.0m 이상의 통로가 확보되어야 합니다.</p>
</div>
</li>
<li class="flex items-start gap-2 border-t border-outline-variant/30 pt-2">
<span class="material-symbols-outlined text-error text-[18px]">bolt</span>
<div class="flex-1">
<p class="text-body-sm font-semibold text-on-surface">허용 전력 초과 (5kW)</p>
<p class="text-label-xs text-on-surface-variant">할당된 전력(3kW) 대비 66% 초과 사용이 감지되었습니다.</p>
</div>
</li>
</ul>
</div>
<!-- Submission Info -->
<div class="grid grid-cols-2 gap-4 text-label-xs">
<div class="space-y-1">
<p class="text-on-surface-variant">제출일시</p>
<p class="font-semibold text-on-surface">2024.10.22 14:30</p>
</div>
<div class="space-y-1">
<p class="text-on-surface-variant">담당자</p>
<p class="font-semibold text-on-surface">김민수 팀장</p>
</div>
</div>
</div>
</div>
<!-- More Cards (Collapsed State) -->
<div class="bg-white border border-outline-variant rounded-xl p-4 flex justify-between items-center opacity-60">
<div class="space-y-1">
<div class="flex items-center gap-2">
<span class="material-symbols-outlined text-on-surface-variant text-[18px]">assignment</span>
<span class="text-label-xs text-on-surface-variant">운영 매뉴얼</span>
</div>
<h3 class="font-label-md text-label-md text-on-surface">(주)글로벌비즈</h3>
</div>
<div class="flex flex-col items-end gap-1">
<span class="px-2 py-0.5 bg-surface-variant text-on-surface-variant text-label-xs rounded">승인 대기</span>
<span class="text-label-xs text-on-surface-variant font-mono">D-3</span>
</div>
</div>
<div class="bg-white border border-outline-variant rounded-xl p-4 flex justify-between items-center opacity-60">
<div class="space-y-1">
<div class="flex items-center gap-2">
<span class="material-symbols-outlined text-on-surface-variant text-[18px]">verified_user</span>
<span class="text-label-xs text-on-surface-variant">보안 준수 확인서</span>
</div>
<h3 class="font-label-md text-label-md text-on-surface">코리아네트웍스</h3>
</div>
<div class="flex flex-col items-end gap-1">
<span class="px-2 py-0.5 bg-surface-variant text-on-surface-variant text-label-xs rounded">승인 대기</span>
<span class="text-label-xs text-on-surface-variant font-mono">D-12</span>
</div>
</div>
</div>
</main>
<!-- Bottom Action Bar (Fixed) -->
<div class="fixed bottom-20 left-0 w-full px-4 pb-4 pt-4 glass-panel border-t border-outline-variant z-50">
<div class="flex gap-3">
<button class="flex-1 h-14 rounded-xl border border-error text-error font-title-sm text-title-sm flex items-center justify-center gap-2 active:bg-error-container transition-colors">
<span class="material-symbols-outlined">close</span>
반려
</button>
<button class="flex-[2] h-14 rounded-xl bg-primary text-on-primary font-title-sm text-title-sm flex items-center justify-center gap-2 active:opacity-90 shadow-lg shadow-primary/20">
<span class="material-symbols-outlined">check_circle</span>
승인
</button>
</div>
</div>
<!-- Bottom Navigation Bar (Persistent Shell) -->
<footer class="fixed bottom-0 w-full z-50 flex justify-around items-center px-gutter pb-safe h-20 bg-surface-container border-t border-outline-variant">
<button class="flex flex-col items-center justify-center text-on-surface-variant px-4 py-1 hover:bg-surface-variant transition-all scale-95 active:scale-90">
<span class="material-symbols-outlined">home</span>
<span class="font-label-md text-label-md"></span>
</button>
<button class="flex flex-col items-center justify-center bg-secondary-container text-on-secondary-container rounded-full px-4 py-1 transition-all scale-95 active:scale-90">
<span class="material-symbols-outlined" style="font-variation-settings: 'FILL' 1;">grid_view</span>
<span class="font-label-md text-label-md">부스 관리</span>
</button>
<button class="flex flex-col items-center justify-center text-on-surface-variant px-4 py-1 hover:bg-surface-variant transition-all scale-95 active:scale-90">
<span class="material-symbols-outlined">notifications</span>
<span class="font-label-md text-label-md">알림</span>
</button>
<button class="flex flex-col items-center justify-center text-on-surface-variant px-4 py-1 hover:bg-surface-variant transition-all scale-95 active:scale-90">
<span class="material-symbols-outlined">analytics</span>
<span class="font-label-md text-label-md">통계</span>
</button>
<button class="flex flex-col items-center justify-center text-on-surface-variant px-4 py-1 hover:bg-surface-variant transition-all scale-95 active:scale-90">
<span class="material-symbols-outlined">menu</span>
<span class="font-label-md text-label-md">더보기</span>
</button>
</footer>
<script>
// Simple Micro-interaction for feedback
document.querySelectorAll('button').forEach(btn => {
btn.addEventListener('click', () => {
if (window.navigator.vibrate) window.navigator.vibrate(10);
});
});
</script>
</body></html>