.app{width: min(1280px, calc(100% - 32px));margin: 22px auto 20px;background:#fffdf8;border:1px solid #e2d8c8;border-radius:14px;box-shadow:0 8px 30px rgba(20,30,50,.08);display:flex;flex-direction:column;overflow:}
.intro{padding: 16px 18px 12px;}
h1{font-size: 20px; margin: 0 0 5px;}
.intro p{color:var(--muted);font-size:13px;margin:0}
        .container {
            background: #fff;
            padding: 25px;
            border-radius: 10px;
            box-shadow: 0 4px 6px rgba(0,0,0,0.1);
        }
        .drop-zone {
            border: 2px dashed #e2d8c8;
            border-radius: 8px;
            padding: 30px;
            text-align: center;
            background: #f8f9fa;
            cursor: pointer;
            transition: background 0.3s, border-color 0.3s;
            margin-bottom: 20px;
        }
        .drop-zone:hover, .drop-zone.dragover {
            background: #f4efe6;
            border-color: #9a4014;
        }
        input[type="file"] { display: none; }
        
        .preview-container {
            display: flex;
            gap: 20px;
            margin-top: 20px;
            align-items: flex-start;
        }
        .image-preview {
            flex: 1;
            text-align: center;
            border: 1px solid #e9ecef;
            padding: 15px;
            border-radius: 8px;
            background: #fafafa;
        }
        .image-preview img {
            max-width: 100%;
            max-height: 200px;
            border-radius: 4px;
            margin-top: 10px;
            box-shadow: 0 2px 4px rgba(0,0,0,0.05);
        }
        .output-container {
            flex: 2;
            display: flex;
            flex-direction: column;
        }
        textarea {
            width: 100%;
            height: 150px;
            padding: 10px;
            border: 1px solid #ced4da;
            border-radius: 5px;
            font-family: monospace;
            font-size: 12px;
            resize: vertical;
            background: #f8f9fa;
        }
        .btn {
            padding: 10px 15px;
            background-color: #c45c26;
            color: white;
            border: none;
            border-radius: 5px;
            font-size: 14px;
            cursor: pointer;
            transition: background 0.3s;
            margin-top: 10px;
            align-self: flex-end;
        }
        .btn:hover { background-color: #a33b2b; }
        .btn-success { background-color: #333; }
        .btn-success:hover { background-color: #000; }
        .info { font-size: 0.9em; color: #666; margin-top: 5px; }