*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,sans-serif;max-width:800px;margin:0 auto;padding:1rem;color:#1a1a1a;background:#fafafa}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;border-bottom:1px solid #ddd;padding-bottom:.75rem}header h1{font-size:1.4rem}nav button{margin-left:.5rem;padding:.3rem .7rem;cursor:pointer;border:1px solid #ccc;border-radius:4px;background:#fff}nav button:hover{background:#eee}.error{color:#c00;background:#fee;padding:.5rem;border-radius:4px;margin-bottom:1rem}.success{color:#060;background:#efe;padding:.5rem;border-radius:4px;margin-bottom:1rem}.empty-state{text-align:center;padding:3rem 1rem;color:#888}form{display:flex;flex-direction:column;gap:.75rem;max-width:400px}label{display:flex;flex-direction:column;gap:.25rem;font-weight:500;font-size:.9rem}input,select{padding:.4rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem}.field-error{color:#c00;font-size:.8rem}button{padding:.5rem 1rem;border:1px solid #ccc;border-radius:4px;cursor:pointer;background:#fff;font-size:.9rem}button.primary{background:#2563eb;color:#fff;border-color:#2563eb}button.danger{background:#dc2626;color:#fff;border-color:#dc2626}button:hover{opacity:.9}.disc-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.disc-item{display:flex;align-items:center;gap:1rem;padding:.75rem;border:1px solid #ddd;border-radius:6px;background:#fff}.disc-item img{width:50px;height:70px;object-fit:cover;border-radius:3px}.disc-item .info{flex:1}.disc-item .info .name{font-weight:600}.disc-item .info .meta{font-size:.8rem;color:#666}.disc-item .actions{display:flex;gap:.3rem}.disc-item .actions button{font-size:.8rem;padding:.25rem .5rem}.token-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.token-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border:1px solid #ddd;border-radius:4px;background:#fff}.token-item .label{font-weight:500}.token-item .date{font-size:.8rem;color:#666}.section{margin-bottom:2rem}.section h2{font-size:1.1rem;margin-bottom:.75rem}.btn-row{display:flex;gap:.5rem;margin-top:.5rem}.preview-img{max-width:150px;max-height:200px;margin-top:.5rem;border-radius:4px}.plaintext-token{font-family:monospace;background:#ffe;padding:.5rem;border:1px solid #cc0;border-radius:4px;word-break:break-all;margin:.5rem 0}
